本文共 1456 字,大约阅读时间需要 4 分钟。
FragmentTabHost 包含两个内容:TabWidget和FrameLayout。
标准的FragmentTabHost是TabWidget在上面,FrameLayout在下面。 如果想要制作TabWidget在下面的效果,可以在布局文件中手动添加一个FrameLayout,并将FragmentTabHost 中的FrameLayout 的宽高设为0即可。不能省略掉FragmentTabHost 中的FrameLayout。
xml文件的示例代码如下:
这个布局即是TabWidget在下,FrameLayout在上。跟微信的效果一致。
使用FragmentTabHost 分为三个步骤:
代码如下:
// 1.初始化FragmentTabHostFragmentTabHost tabHost = (FragmentTabHost) findViewById(android.R.id.tabhost);tabHost.setup(this, getSupportFragmentManager(),R.id.activity_home_container); // 2.新建TabSpec(小标签),并setIndicatorTabSpec tabSpec = tabHost.newTabSpec(TAG_CHAT);chatIndicator = new TabIndicatorView(this); //下面三个方法是项目中自定义方法 chatIndicator.setIcon(R.drawable.tab_icon_chat_normal,R.drawable.tab_icon_chat_focus); chatIndicator.setTitle("消息"); chatIndicator.setUnReadCount(0);tabSpec.setIndicator(chatIndicator);// 3.将TabSpec添加进FragmentTabHost// 参数1:FragmentTabHost 参数2:要显示内容的类名 参数3:要传递的Bundle参数tabHost.addTab(tabSpec, MyFragment.class, null);//去掉分割线tabHost.getTabWidget().setDividerDrawable(android.R.color.white);//初始化tab选中tabHost.setCurrentTabByTag(TAG_CHAT);chatIndicator.setSelected(true); //自定义的方法//设置Tab点击切换监听tabHost.setOnTabChangedListener(this);
以上就是FragmentTabHost的使用方法。
转载地址:http://xvvpi.baihongyu.com/