TabHost用來顯示Tab頁,先看效果
源碼下載
一概述
提供Tab頁的視窗視圖容器,它有倆個children,一組是使用者可以選擇指定Tab頁的標籤,另一組是FrameLayout用來顯示該Tab頁的內容。個別元素通常控制使用這個容器物件,而不是設定在子項目本身的值。
二、重要方法
addTab(TabHost.TabSpec tabSpec):添加一項Tab頁
clearAllTabs():清除所有與之相關聯的Tab頁.
getCurrentTab():返回當前Tab頁.
getTabContentView():返回包含內容的FrameLayout
newTabSpec(String tag):返回一個與之關聯的新的TabSpec
三、執行個體
1.布局檔案,需要使用FrameLayout
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView android:id="@+id/view1"
android:background="@drawable/b"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:text="頁1"/>
<TextView android:id="@+id/view2"
android:background="@drawable/c"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:text="頁2"/>
<TextView android:id="@+id/view3"
android:background="@drawable/d"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:text="頁3"/>
</FrameLayout>
2.繼承TabActivity
public class TabHostDemo extends TabActivity
3.擷取次此abHost
TabHost tabHost = getTabHost();
4.設定布局
LayoutInflater.from(this).inflate(R.layout.tabhostpage, tabHost.getTabContentView(), true);
5.添加Tab頁
tabHost.addTab(tabHost.newTabSpec("tab1")
.setIndicator("tab1")
.setContent(R.id.view1));
tabHost.addTab(tabHost.newTabSpec("tab3")
.setIndicator("tab2")
.setContent(R.id.view2));
tabHost.addTab(tabHost.newTabSpec("tab3")
.setIndicator("tab3")
.setContent(R.id.view3));