android之TabWidget选项卡

1 概览

l TabWidget与TabHost。tab组件一般包括TabHost和TabWidget、FrameLayout,且TabWidget、FrameLayout属于TabHost。

l 是否继承TabActivity的问题

l 实现步骤。两种实现方式,一种是将每个Tab的布局嵌在TabHost中的FrameLayout中,每个Tab的内容布局与显示都在FrameLayout中进行,缺点是布局会显得很臃肿;一种是每个Tab从FrameLayout中独立出来,以Activity呈现,,这样使得每个Tab有单独的布局。

2 效果图

Widget在顶部的情形:

3 主要布局

3.1 TabMain布局

方式一:

<?xml version="1.0" encoding="utf-8"?><TabHost xmlns:android=""android:id="@+id/tabhost"android:layout_width="match_parent"android:layout_height="match_parent"android:orientation="vertical" ><RelativeLayoutandroid:layout_width="fill_parent"android:layout_height="fill_parent"android:orientation="vertical" ><TabWidgetandroid:id="@android:id/tabs"android:layout_width="fill_parent"android:layout_height="60dip"android:layout_alignParentBottom="true"android:background="#424242" ></TabWidget><FrameLayoutandroid:id="@android:id/tabcontent"android:layout_width="fill_parent"android:layout_height="fill_parent" ><LinearLayoutandroid:id="@+id/theme"android:layout_width="fill_parent"android:layout_height="fill_parent"android:orientation="vertical" ><TextViewandroid:id="@+id/theme_title"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="Tab1" /></LinearLayout><LinearLayoutandroid:id="@+id/wallpaper"android:layout_width="fill_parent"android:layout_height="fill_parent"android:orientation="vertical" ><TextViewandroid:id="@+id/wallpaper_title"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="Tab2" /></LinearLayout><LinearLayoutandroid:id="@+id/iconbg"android:layout_width="fill_parent"android:layout_height="fill_parent"android:orientation="vertical" ><TextViewandroid:id="@+id/iconbg_title"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="Tab3" /></LinearLayout><LinearLayoutandroid:id="@+id/screenlock"android:layout_width="fill_parent"android:layout_height="fill_parent"android:orientation="vertical" ><TextViewandroid:id="@+id/screenlock_title"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="Tab4" /></LinearLayout><LinearLayoutandroid:id="@+id/effect"android:layout_width="fill_parent"android:layout_height="fill_parent"android:orientation="vertical" ><TextViewandroid:id="@+id/effect_title"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="Tab5" /></LinearLayout></FrameLayout></RelativeLayout></TabHost>

方式二:

<?xml version="1.0" encoding="utf-8"?> <TabHost xmlns:android=""android:id="@android:id/tabhost"android:layout_width="fill_parent"android:layout_height="fill_parent"android:background="@color/wcity_normal_bg" ><LinearLayoutandroid:layout_width="fill_parent"android:layout_height="fill_parent"android:orientation="vertical" ><FrameLayoutandroid:id="@android:id/tabcontent"android:layout_width="fill_parent"android:layout_height="fill_parent"android:layout_weight="1" ></FrameLayout><TabWidgetandroid:id="@android:id/tabs"android:layout_width="fill_parent"android:layout_height="wrap_content"android:background="@drawable/tab"/></LinearLayout></TabHost>

3.2 TabItem布局

这一部分中方式一与方式二没有什么区别,只有表示形式的区别。比如,根据需求,Tab可以

只以文字呈现,

可以只以图片呈现,

可以同时有图片和文字

吃东西,随便是什么——都可以。当日出越过山涧,我未老,你依然。

android之TabWidget选项卡

相关文章:

你感兴趣的文章:

标签云: