Как загрузить все вкладки панели вкладок одновременно в Android - PullRequest
1 голос
/ 21 февраля 2012

У меня есть четыре вкладки в панели вкладок. Всякий раз, когда я запускаю свое приложение, мне нужно запускать все вкладки (четыре) панели вкладок, потому что все вкладки содержат веб-просмотры, которые следует загружать при каждом запуске приложения. Но первая вкладка должна быть выделена. Я использовал

setCurrentTab(0); 

для загрузки первой вкладки, но я не могу загрузить оставшиеся вкладки без нажатия кнопки.

1 Ответ

0 голосов
/ 23 апреля 2012

Для этого сначала создайте XML-файл.Пример файла показан ниже:

<?xml version="1.0" encoding="utf-8"?>
<TabHost android:layout_width="fill_parent"
    android:layout_height="fill_parent" android:id="@android:id/tabhost"
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:background="@drawable/background">
    <TabWidget android:layout_width="fill_parent" android:id="@android:id/tabs"
        android:layout_height="wrap_content" />
    <FrameLayout android:layout_width="fill_parent" android:id="@android:id/tabcontent"
        android:layout_gravity="bottom" android:paddingTop="70dp"
        android:layout_height="match_parent">

    <ScrollView android:layout_height="fill_parent" android:id="@+id/viewTab1"
        android:layout_width="match_parent">
        <!-- Your view you want -->

    </ScrollView>
    <LinearLayout android:layout_width="fill_parent"
        android:layout_height="fill_parent" android:id="@+id/viewTab2">
        <!-- Your view you want -->

    </LinearLayout>

    <!-- Add as many view you want with unique id -->
</FrameLayout>

Каждый макет будет ссылаться на уникальный макет.

В основном упражнении используйте следующее

TabHost tabHost = getTabHost(); 
TabSpec spec1 = tabHost.newTabSpec("FirstTabView");
TabSpec spec2 = tabHost.newTabSpec("SecondTabView");

spec1.setContent(R.id.viewTab1);
spec1.setIndicator("First Tab");

spec2.setIndicator("Second Tab");
spec2.setContent(R.id.viewTab2);

tabHost.addTab(spec1);
tabHost.addTab(spec2);

tabHost.setup();

Вы можете добавить столько вкладок, сколько необходимо.И все это будет инициализировано одновременно.

Надеюсь, это поможет вам:)

...