一、改變Tab欄的位置。
java代碼。在TabActivity的oncreate方法中添加
setContentView(R.layout.tab_host);
其中 Layout tab_host.xml 是從系統(tǒng)資源文件中摳出來之后略作修改。
系統(tǒng)原來的 tab_host.xml內(nèi)容如下
<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:orientation="vertical"
android:layout_width="match_parent" android:layout_height="match_parent">
<TabWidget android:id="@android:id/tabs" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_weight="0" />
<FrameLayout android:id="@android:id/tabcontent"
android:layout_width="match_parent" android:layout_height="0dip"
android:layout_weight="1"/>
</LinearLayout>
</TabHost>
要實(shí)現(xiàn)TAB欄在頁面下方,只需簡單修改。
二、自定義TAB的圖片。系統(tǒng)自帶的tab_indicator.xml內(nèi)容如下
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="0dip"
android:layout_height="64dip"
android:layout_weight="1"
android:layout_marginLeft="-3dip"
android:layout_marginRight="-3dip"
android:orientation="vertical"
android:background="@android:drawable/tab_indicator">
<ImageView android:id="@+id/icon"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
/>
<TextView android:id="@+id/title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
style="?android:attr/tabWidgetStyle"
/>
</RelativeLayout>
可以看出,默認(rèn)情況下,圖標(biāo)在文字上方,并且不能占到整個(gè)格,無法滿足設(shè)計(jì)需要。因此可以重寫該Layout。
編寫tab_in.xml
tabHost.addTab(tabHost
.newTabSpec("view2")
.setIndicator(view2)
);
tabHost.addTab(tabHost
.newTabSpec("view3")
.setIndicator(view3)
);
新聞熱點(diǎn)
疑難解答
圖片精選