У меня есть TabHost в одном из моих макетов активности с 4 TabSpec. Я установил для каждого TabSpec содержимое другого LinearLayout, но только первый TabSpec фактически отображает LinearLayout. Я много пробовал, но все еще не могу понять, что случилось. Вот мой код:Содержимое TabHost.TabSpec не отображается
public class ConversionActivity extends Activity {
PhConversion phc = new PhConversion();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_conversions);
TabHost th = (TabHost) findViewById(R.id.tabhost);
th.setup();
TabSpec spec1 = th.newTabSpec("TAB 1");
spec1.setContent(R.id.tab1);
spec1.setIndicator("pH");
TabSpec spec2 = th.newTabSpec("TAB 2");
spec2.setIndicator("Temp");
spec2.setContent(R.id.tab2);
TabSpec spec3 = th.newTabSpec("TAB 3");
spec3.setContent(R.id.tab3);
spec3.setIndicator("Length");
TabSpec spec4 = th.newTabSpec("TAB 4");
spec4.setContent(R.id.tab4);
spec4.setIndicator("Volume");
th.addTab(spec1);
th.addTab(spec2);
th.addTab(spec3);
th.addTab(spec4);
и код XML:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:gesture-image="http://schemas.polites.com/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".ConversionActivity" >
<LinearLayout
android:id="@+id/linearLayout1"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:orientation="horizontal" >
<LinearLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="8"
android:orientation="vertical" >
</LinearLayout>
</LinearLayout>
<TabHost
android:id="@+id/tabhost"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<TabWidget
android:id="@android:id/tabs"
android:layout_width="match_parent"
android:layout_height="wrap_content" >
</TabWidget>
<FrameLayout
android:id="@android:id/tabcontent"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<LinearLayout
android:id="@+id/tab1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/given"
android:textSize="32sp" >
</TextView>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/ph"
android:textSize="20sp" >
</TextView>
<CheckBox
android:id="@+id/phBox"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="disableOthersPH" >
</CheckBox>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/poh"
android:textSize="20sp" >
</TextView>
<CheckBox
android:id="@+id/pohBox"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="disableOthersPOH" >
</CheckBox>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/h"
android:textSize="20sp" >
</TextView>
<CheckBox
android:id="@+id/hBox"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="disableOthersH" >
</CheckBox>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/oh"
android:textSize="20sp" >
</TextView>
<CheckBox
android:id="@+id/ohBox"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="disableOthersOH" >
</CheckBox>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<EditText
android:id="@+id/phconvinput"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="5"
android:inputType="numberDecimal" >
</EditText>
<Button
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="2"
android:onClick="solveph"
android:text="@string/phsolvebutton" >
</Button>
</LinearLayout>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/phsolution"
android:textSize="32sp" >
</TextView>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/ph"
android:textSize="20sp" >
</TextView>
<TextView
android:id="@+id/phanswer"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/somespace"
android:textSize="20sp" >
</TextView>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/poh"
android:textSize="20sp" >
</TextView>
<TextView
android:id="@+id/pohanswer"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/somespace"
android:textSize="20sp" >
</TextView>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/h"
android:textSize="20sp" >
</TextView>
<TextView
android:id="@+id/hanswer"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/somespace"
android:textSize="20sp" >
</TextView>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/oh"
android:textSize="20sp" >
</TextView>
<TextView
android:id="@+id/ohanswer"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/somespace"
android:textSize="20sp" >
</TextView>
</LinearLayout>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/phsolution"
android:textSize="32sp" >
</TextView>
<ImageView
android:id="@+id/what"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:src="@drawable/phschem" />
</LinearLayout>
<LinearLayout
android:id="@+id/tab2"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/hello_world"
android:textSize="32sp" >
</TextView>
</LinearLayout>
<LinearLayout
android:id="@+id/tab3"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
</LinearLayout>
<LinearLayout
android:id="@+id/tab4"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal" >
</LinearLayout>
</LinearLayout>
</FrameLayout>
</LinearLayout>
</TabHost>
Я понимаю, что язычки 3 и 4 являются пустыми, но даже вкладка 2 по-прежнему выглядит пустой, когда я нажимаю его, только вкладка 1 показан правильный LinearLayout.