|
在对Android操作系统进行相应修改中,我们可以发现,这一系统的编程方式非常简单易懂,方便开发人员实现各种功能需求。在这里就先从Android选项卡的实现来具体了解一下这一系统的编写方式。
首先创建Android工程命名自己的Activity为HelloTabWidget
在main。xml或者自己定义的*。xml文件中创建一个TabHost,需要两个元素TabWidget和FrameLayout 通常会把这两个元素放到LinearLayout中。FrameLayout作为改变内容content用的。
注意:TabWidget和FrameLayout 有不同的ID命名空间android:id="@android:id/idnames",这个是必须的因此TabHost才能自动找到它,Activity需要继承TabActivity。
Android选项卡Xml代码
java代码: < ?xml version="1.0" encoding="utf-8"?>
< TabHost xmlns:android="http://schemas.android.com/apk/res/android" android:id="@android:id/tabhost" android:layout_width="fill_parent"
android:layout_height="fill_parent">
< LinearLayout
androidrientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
< TabWidget
android:id="@android:id/tabs"
android:layout_width="fill_parent"
android:layout_height="wrap_content" />
< FrameLayout
android:id="@android:id/tabcontent"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
< TextView
android:id="@+id/textview1"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:text="this is a tab" />
< TextView
android:id="@+id/textview2"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:text="this is another tab" />
< TextView
android:id="@+id/textview3"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:text="this is a third tab" />
< /FrameLayout>
< /LinearLayout>
< /TabHost>
Activity需要继承TabActivity
Android选项卡
Java代码: public class HelloTabWidget extends TabActivity
Android选项卡
Java代码: public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
mTabHost = getTabHost();
mTabHost.addTab(mTabHost.newTabSpec("tab_test1").setIndicator("TAB 1").setContent(R.id.textview1));
mTabHost.addTab(mTabHost.newTabSpec("tab_test2").setIndicator("TAB 2").setContent(R.id.textview2));
mTabHost.addTab(mTabHost.newTabSpec("tab_test3").setIndicator("TAB 3").setContent(R.id.textview3));
mTabHost.setCurrentTab(0);
} |
|