Android 面板控件Tab

2014-06-05
浏览
导读:Android 面板控件Tab 在手机有限的屏幕里面,有时候我们要安排较多的内容可能无法容纳,当然我们可以使用版面的滚动功能,但是这样做显得不是很好看,而且有时候我们需要对不同功能集合的控件集中在各自的面板中,这就需要使用面板Tab控件了。 面板控件的好处


       Android 面板控件Tab

       在手机有限的屏幕里面,有时候我们要安排较多的内容可能无法容纳,当然我们可以使用版面的滚动功能,但是这样做显得不是很好看,而且有时候我们需要对不同功能集合的控件集中在各自的面板中,这就需要使用面板Tab控件了。

       面板控件的好处是能在一个界面上同时显示不同的面板内容,通过面板标签方便的切换到不同的面板上面,开始介绍这个Tab控件的使用,为了直观起见,我们直接从例子介绍Tab控件的两种显示方法。

       布局文件中定义两个Tab中显示的内容,这里以TextView为例。

java代码:
< ?xml version="1.0" encoding="utf-8"?>
< FrameLayout xmlns:android=""
android:layout_width="fill_parent" android:layout_height="fill_parent">
< !? Tab 1 中显示的内容 ?>
< TextView android:id="@+id/content1" android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:text="tab1 content" />
< !? Tab 2 中显示的内容 ?>
< TextView android:id="@+id/content2" android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:text="tab2 content" />
< /FrameLayout>

       在程序中使用Tab并调用布局中的控件:

java代码:
public class _Tab extends TabActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
TabHost tabHost = getTabHost();
LayoutInflater.from(this).inflate(R.layout.tab, tabHost.getTabContentView(), true);
// Tab 1 的内容
tabHost.addTab(tabHost.newTabSpec("tab1").setIndicator("tab1", getResources().getDrawable(R.drawable.p1)).setContent(R.id.view1));
// Tab 2 的内容
tabHost.addTab(tabHost.newTabSpec("tab2").setIndicator("tab2", getResources().getDrawable(R.drawable.p1)).setContent(R.id.view2));
// Tab 3 的内容(用指定的 Activity来设置 Tab 的内容)
tabHost.addTab(tabHost.newTabSpec("tab3").setIndicator("tab3", getResources().getDrawable(R.drawable.p1)).setContent(new Intent(this, _TextView.class)));
}
}

       由以上例子可见,Tab的使用主要的方法有addTab、setIndicator、setContent,另外,除了使用布局文件来定义Tab中显示的内容,还可以直接把另一个Activity作为Tab的内容显示,使得每个Tab面板的内容独立开来。

编程实现Android远程控制PC

[Android的系统移植与平台开发]Sensor HAL

[Android的系统移植与平台开发]Sensor HAL

用ViewPager实现高仿图片左右滑动自动切换

详解android Content Provider[6]