我正在使用一個使用選項卡布局的Activity的Android應用程序。有兩個選項卡在一些TextView中顯示的內容之間切換。如何在TabHost中顯示兩個不同選項卡的相同佈局?
這意味着,兩個選項卡的規格指向相同的佈局(線性)爲內容,R.id.plantilla:
<?xml version="1.0" encoding="utf-8"?>
<TabHost xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@android:id/tabhost"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<TabWidget
android:id="@android:id/tabs"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<FrameLayout
android:id="@android:id/tabcontent"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<include layout="@layout/plantilla"/>
</FrameLayout>
</LinearLayout>
但是這僅適用如果切換到片2和回到1,即當活動啓動時,佈局「plantilla」在選項卡更改之前無法看到。這是我的問題。
什麼是最簡單的方法來解決這個問題?
PD:我曾試圖複製在tabhost XML行
<include layout="@layout/plantilla">
,但在這種情況下,我不能使用findViewById Java代碼中TextViews對象的訪問(R.id.someTextView) ;
感謝朋友,但此方法並不能幫助我,因爲我不想通過選項卡進行活動。我想要一個單獨的活動,TabActivity,這取決於選項卡標記顯示不同的內容。每個選項卡中顯示的內容都是從具有TabActivity的私人對象中讀取的。如果我有多個活動,我必須在我認爲比兩個選項卡的佈局相同的活動中分享這個對象。 – cs4r 2012-03-24 15:21:42