第四十四讲:用户界面 View(十一)

本讲内容:标签页的实现 TabHost TabWidget TabActivity

使用Tab标签页控件,可以在同一个空间里放置更多内容。譬如Android自带的拨号程序及通讯录等,就使用了Tab标签功能:

image

下面我们用实例的方式来学习如何制作上面类似的标签效果,其实还是很简单的。我同样是把解释写到示例的注释里了,注释是我的理解并不准确,方便你记忆而已。

1、新建一个项目 Lesson44_Tab ,Activity起名叫 MainActivity

2、编写 main.xml 内容如下,这次的形式和普通布局文件有所区别,请注意看写法:

<?xml version="1.0" encoding="utf-8"?>



	
	
	
	
	
		

			
			
		
		

			
			
		
	

3、编写 MainActivity,请注意它继承的是 TabActivity 类,解释在代码里:

package basic.android.lesson44;

import android.app.TabActivity;
import android.os.Bundle;
import android.widget.TabHost;

public class MainActivity extends TabActivity {

	@Override
	public void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.main);

		// tabHost是一个标签容器
		TabHost tabHost = this.getTabHost();

		// 每一个TabSpec对象就是个标签
		// TabSpec.setIndicator()方法是设置标签显示样式
		// TabSpec.setContent()方法显示标签下方的内容显示

		//定义第一个标签
		tabHost.addTab(tabHost.newTabSpec("OneTab")
				.setIndicator("OneTab", getResources().getDrawable(android.R.drawable.star_on))
				.setContent(R.id.linearLayout1));

		//定义第二个标签
		tabHost.addTab(tabHost.newTabSpec("TwoTab")
				.setIndicator("TwoTab", getResources().getDrawable(android.R.drawable.star_off))
				.setContent(R.id.linearLayout2));

	}
}

4、编译程序,运行代码,查看结果:

image

点击 TwoTab ,标签切换:

image

关于注释你最好先看一遍,等代码跑起来后再看一遍。好了,本讲就到这里。

转自 http://android.yaohuiji.com/archives/2512

posted on 2011-11-02 11:29  moss  阅读(107)  评论(0)    收藏  举报

导航