TabHost 选项卡

原创 2015年07月09日 16:39:18

就是常见这个界面,可以选择的页卡:

 

public class MyTabHostAndGridViewActivity extends TabActivity {
	private ImageView mImageTabHost;
	private TextView mTextTabHost;
	private LayoutInflater mLayoutInflater;
	private TabHost mTabHost;
	final private int one = 1;
	final private int two = 2;
	final private int three = 3;
	final private int four = 4;

	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		requestWindowFeature(Window.FEATURE_NO_TITLE);
		setContentView(R.layout.activity_tabhost_layout);
		mLayoutInflater = LayoutInflater.from(this);

		
		//实例化TabHost
		mTabHost = getTabHost();
		//创建第一个页卡
		TabSpec spe1 = mTabHost.newTabSpec("One");
		spe1.setIndicator(getListView(one));
		spe1.setContent(new Intent(this, MyTabOneGostActivity.class));
		//创建第二个页卡
		TabSpec spe2 = mTabHost.newTabSpec("Two");
		spe2.setIndicator(getListView(two));
		spe2.setContent(new Intent(this, MainActivity.class));
		//创建第三个页卡
		TabSpec spe3 = mTabHost.newTabSpec("Three");
		spe3.setIndicator(getListView(three));
		spe3.setContent(new Intent(this, MyTabWidgetActivity.class));
		//创建第四个页卡
		TabSpec spe4 = mTabHost.newTabSpec("Four");
		spe4.setIndicator(getListView(four));
		spe4.setContent(new Intent(this, MyMoreActivity.class));
		然后在把创建的页卡加入到TabWidget中	
		mTabHost.addTab(spe1);
		mTabHost.addTab(spe2);
		mTabHost.addTab(spe3);
		mTabHost.addTab(spe4);

	}
	//自定义页卡的名字
	public View getListView(int n) {

		View viewTab = mLayoutInflater.inflate(
				R.layout.activity_main_tabhost_public_layout, null);
		mImageTabHost = (ImageView) viewTab
				.findViewById(R.id.main_tab_host_iamge);
		mTextTabHost = (TextView) viewTab
				.findViewById(R.id.main_tab_host_text_content);

		switch (n) {
		case one:
			mImageTabHost.setBackgroundResource(R.drawable.select_my);
			mTextTabHost.setText("团购");
			break;
		case two:
			mImageTabHost.setBackgroundResource(R.drawable.selcet_business);
			mTextTabHost.setText("商家");
			break;
		case three:
			mImageTabHost.setBackgroundResource(R.drawable.select_me);
			mTextTabHost.setText("我的");
			break;
		case four:
			mImageTabHost.setBackgroundResource(R.drawable.select_more);
			mTextTabHost.setText("更多");
			break;
		}
		return viewTab;
	}
}
代码的布局文件:均需要引用系统的ID来处理
 
<?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="match_parent"
    android:layout_height="match_parent" >

    <RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent" >

        <TabWidget
            android:id="@android:id/tabs"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_alignParentBottom="true"
            android:background="@color/bung"
            android:paddingBottom="5dp"
            android:paddingTop="5dp" />

        <FrameLayout
            android:id="@android:id/tabcontent"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:layout_alignParentLeft="true" 
            android:layout_above="@android:id/tabs">
        </FrameLayout>
    </RelativeLayout>

</TabHost>



左侧TabHost选项卡

  • 2014年04月09日 22:03
  • 5.44MB
  • 下载

TabHost+FrameLayout实现底部选项卡

  • 2017年09月07日 11:44
  • 513KB
  • 下载

Android - TabHost 选项卡功能用法详解

一. TabHost介绍   TabHost组件可以在界面中存放多个选项卡, 很多软件都使用了改组件进行设计;   1. TabHost常用组件   TabWidget...

TabHost 选项卡

  • 2015年09月11日 11:11
  • 1.2MB
  • 下载

自定义TabHost中选项卡的点击监听事件

而在Android上,可以用support v4中的 FragmentTabHost 来实现类似效果,它继承自 TabHost ,每个子页面都是一个 Fragment 。 今天遇到一个需求,需要在点...

Android - TabHost选项卡示例源码

  • 2014年01月13日 22:09
  • 1.53MB
  • 下载

Android - TabHost 选项卡功能用法详解

TabHost效果图 :  源码下载地址 : http://download.csdn.net/detail/han1202012/6845105        ...
  • qiu_11
  • qiu_11
  • 2014年01月15日 08:03
  • 1544

用TabHost实现带红点的选项卡界面

  • 2016年01月21日 16:46
  • 1.42MB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:TabHost 选项卡
举报原因:
原因补充:

(最多只允许输入30个字)