一材料使用
AppCompatActivity提供获取V4Fragment相关支持 Fragment FragmentPagerAdapter ViewPager TabLayout
二细节处理
对Fragment进行处理
//Fragment判断isVisibleToUser实现懒加载涉及的方法
@Overridepublic void setUserVisibleHint(boolean isVisibleToUser) {
if (isVisibleToUser) {
loadData();
}
super.setUserVisibleHint(isVisibleToUser);
}
@Overridepublic boolean getUserVisibleHint() {
return super.getUserVisibleHint();
}
TabLayout及ViewPager:
tabLayout.setupWithViewPager(viewPager);//关联TabLayout及ViewPager,如要自定义tabl布局在标签确定之后进行
viewPager.setOffscreenPageLimit(tabBeanList.size());//保证标签页不重复初始化
tabLayout.setOnTabSelectedListener();//处理标签选中及取消选中(更改图标及文字颜色)
三TabLayout使用
添加tab
tabLayout.addTab(tabLayout.newTab().setText("Tab 1"));
修改tab布局
tabLayout.getTabAt(i).setCustomView(view);
改变选中字体的颜色
app:tabSelectedTextColor="@android:color/holo_orange_light"
改变未选中字体的颜色
app:tabTextColor="@color/colorPrimary"
改变指示器下标的颜色
app:tabIndicatorColor="@android:color/holo_orange_light"
改变整个TabLayout的颜色
app:tabBackground="color"
改变TabLayout内部字体大小
app:tabTextAppearance="@android:style/TextAppearance.Holo.Large"
设置指示器下标的高度:
app:tabIndicatorHeight="4dp"
添加图标
tabLayout.addTab(tabLayout.newTab().setText("Tab 1").setIcon(R.mipmap.ic_launcher));
Tab的模式
app:tabMode="scrollable|fixed"
设置Tab内部的子控件的Padding
app:tabPadding="xxdp"
app:tabPaddingTop="xxdp"
app:tabPaddingStart="xxdp"
app:tabPaddingEnd="xxdp"
app:tabPaddingBottom="xxdp"
设置整个TabLayout的Padding
app:paddingEnd="xxdp"
app:paddingStart="xxdp"
内容的显示模式
app:tabGravity="center"//居中,如果是fill,则是充满
Tab的宽度限制
app:tabMaxWidth="xxdp"
app:tabMinWidth="xxdp"
TabLayout开始位置的偏移量
app:tabContentStart="100dp"
网友评论