一、创建一个类继承自TabActivity
二、创建标签视图对应的布局文件,所有的标签页的内容都在该布局文件里
<?xml version="1.0" encoding="utf-8"?> <!-- 标签页对应的布局,一般采用FrameLayout作为根布局,每个标签页面对应一个子节点的Layout--> <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent"> <RelativeLayout android:id="@+id/tab1" android:layout_width="fill_parent" android:layout_height="wrap_content" android:padding="10dip"> <TextView android:layout_width="fill_parent" android:id="@+id/tab1_tv1" android:layout_height="wrap_content" android:text="@string/start" android:layout_alignParentTop="true" android:paddingBottom="5dip" /> </RelativeLayout> <LinearLayout android:id="@+id/tab2" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="wrap_content" android:padding="10dip"> <ImageButton android:layout_width="100dip" android:layout_height="50dip" android:layout_gravity="center_horizontal" android:src="@android:drawable/ic_menu_search" android:id="@+id/tab2_b1" /> </LinearLayout> <LinearLayout android:id="@+id/tab3" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="wrap_content" android:padding="10dip"> <EditText android:id="@+id/tab3_et1" android:layout_width="fill_parent" android:singleLine="true" android:layout_height="wrap_content" /> </LinearLayout> <ScrollView android:id="@+id/tab4" android:orientation="vertical" android:layout_width="fill_parent" android:scrollbars="vertical" android:layout_height="wrap_content" android:padding="10dip"> <TableLayout android:id="@+id/menu" android:layout_width="fill_parent" android:layout_height="wrap_content"> <TableRow> <TextView android:id="@+id/tab4_h2" android:text="@string/line" android:gravity="left" android:padding="3dip" /> <TextView android:id="@+id/tab4_et2" android:gravity="left" android:padding="3dip" /> </TableRow> <TableRow> <TextView android:id="@+id/tab4_h5" android:gravity="left" android:padding="3dip" /> <TextView android:id="@+id/tab4_et5" android:gravity="left" android:padding="3dip" /> </TableRow> </TableLayout> </ScrollView> </FrameLayout>
三、在Oncreate函数中实现:
1、取得当前的tabHost,用于管理标签:TabActivity中存放tab的容器
TabHost abHost = getTabHost();
2、绑定布局文件:
LayoutInflater.from(this).inflate(R.layout.tab, tabHost.getTabContentView(), true);
3、实例化标签页:
//实例化一个分页 TabHost.TabSpec tab1 = tabHost.newTabSpec("tab1"); //设置该分页的标题和图标 tab1.setIndicator("标题",getResources().getDrawable(R.drawable.result)); //设置该标签页的布局内容,这是前面绑定的布局文件中FrameLayout下的一个子Layout tab1.setContent(R.id.tab1);
4、添加标签页
tabHost.addTab(tab1);
四、标签页中控件事件处理,则同一般的activity一样