Как я могу использовать listview без расширения ListActivity в моем классе?

У меня есть приложение с различными вкладками (на вкладке). Каждая вкладка является активностью, которая расширяет активность и имеет некоторые textfields и вещи на ней.

Теперь мне нужно, чтобы мои вкладки находились внутри списка, но в примере из руководства разработчика Android говорится, что вам нужно расширить ListActivity и не активность.

В принципе, мне нужно объединить эти два учебника:

Как я могу использовать listview без расширения listactivity в моем классе?

Мой XML файл:

<TabHost xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@android:id/tabhost"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">
    <LinearLayout
        android:orientation="vertical"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:padding="5dp">
        <TabWidget
            android:id="@android:id/tabs"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content" />
        <FrameLayout
            android:id="@android:id/tabcontent"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:padding="5dp"/>
    </LinearLayout>
</TabHost>

Ответы

Ответ 1

Ваш TabHost может содержать ListActivity, так как он наследует от Activity.

Но, если вы хотите научиться добавлять список в любом виде, следуйте этим инструкциям. Это достаточно просто, сделайте Activity, добавьте Listview в свой XML.

Используйте findViewById(), чтобы получить Listview.

Ответ 2

Это почти то же самое. Основываясь на Учебник ListView.

Вместо этого:

setListAdapter();

выполните следующие действия:

  • Добавьте <ListView> в свой макет
  • создайте поле var в Activity private ListView mListView;

в методе onCreate() выполните следующее:

 mListView = (ListView) findViewById(R.id.your_list_view_id);
 mListView.setAdapter(new ArrayAdapter<String>(this, R.layout.list_item, COUNTRIES));

Я не помню, если ListActivity предоставляет что-то большее.