tabHost
TabHost 是一个容器
TabSpec 是一个tab
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context=".MainActivity" >
<TabHost
android:id="@android:id/tabhost"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<!-- 此处只是配置一个占位处,表示这里以后会是tab -->
<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" >
<!-- 后期会在代码中生成tab 绑定每一个LinearLayout中的布局-->
<LinearLayout
android:id="@+id/tab1"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<AnalogClock
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</LinearLayout>
<LinearLayout
android:id="@+id/tab2"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<Chronometer
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</LinearLayout>
</FrameLayout>
</LinearLayout>
</TabHost>
</LinearLayout>
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
super.setContentView(R.layout.activity_main);
int[] layRes=new int[]{R.id.tab1,R.id.tab2};
TabHost tabHost = (TabHost)super.findViewById(android.R.id.tabhost);
tabHost.setup();
// 绑定对应的tab
for (int i = 0; i < layRes.length; i++) {
TabSpec tab = tabHost.newTabSpec("tab"+i);
tab.setIndicator("标签"+i);
tab.setContent(layRes[i]);
tabHost.addTab(tab);
}
}