TabHost雖然Android3.0以後就過時了,但是,我們還是會用它的,畢竟有時候用起來很方便的.
使用時,目前,個人知識有限,只曉得兩種方式
1.自己寫一個類MyTabHost 繼承 TabActivity
在setContentView方法裏設置上自己定義的佈局(也可以用默認的,不設置setContentView),主意:自定義的佈局這裏的根佈局必須爲TabHost,,且 android:id="@android:id/tabhost" ,且必須包含下面的兩個佈局
<span style="white-space:pre"> </span> <FrameLayout
android:id="@android:id/tabcontent"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_above="@android:id/tabs"
android:background="@null" />
<TabWidget
android:id="@android:id/tabs"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:divider="@null" />
然後通過
tabWidget = (TabWidget) findViewById(android.R.id.tabs);
mTabHost = (TabHost) findViewById(android.R.id.tabhost);
找到這個兩個控件
主意:mTabHost的獲取也可以通過getTabhost()來獲取;如果使用自己定義的id名稱時,必須使用findViewById(R.id.name),當然這裏是不能使用自己定義的特殊的名稱的
接着是添加選項卡前調用setup,這裏的setup的調用,這裏調用的是不帶參數的,也可以不調用的.
2.自己寫一個類MyTabHost 繼承 ActivityGroup
佈局同上,不過這裏的id,自己進行定義.然後使用findViewById(R.id.name),找到tabWidget ,mTabHost .接着是添加選項卡前調用setup,這裏的調用的是帶參數的那個.
tabHost.setup(getLocalActivityManager());
由於是繼承的ActivityGroup,這裏的getLocalActivityManager()可以使用.
接下就進行選項卡的添加操作了.
個人愚見,方便以後複習.
參考文檔http://www.cnblogs.com/over140/archive/2010/12/10/1901815.html