1、TabLayout有两个设置很重要,我先贴出来解释一下,当然还有其他设置,下面会慢慢说:
(1)app:tabGravity="fill" 这个里面值有两种:
fill:代表里面的item是充满整个屏幕,然后tabItem平分,如图:
center:代表item是居中显示,如图:
(2)app:tabMode="fixed"这个是当tabItem多的时候才会知道作用(下面测试8个tabItem),这个里面的值有两种:
fixed:无论你的tabItem数量是多少,都会在当前屏幕一次性显示完,显然当tabItem多的时候会非常拥挤,当然你有人不会这样干,所以tabItem多的时候,就会用下面的scrollable模式。
scorllable: 当tabItem多的时候,支持tabLayout滑动。
2、TabLatout的点击选择事件(TabItem的点击事件):
mTabLayout.addOnTabSelectedListener(new TabLayout.OnTabSelectedListener() {
@Override
public void onTabSelected(TabLayout.Tab tab) {
Snackbar.make(mTabLayout, tab.getText().toString(), Snackbar.LENGTH_SHORT)
.show();
}
@Override
public void onTabUnselected(TabLayout.Tab tab) {
}
@Override
public void onTabReselected(TabLayout.Tab tab) {
}
});
3、与ViewPager关联:
mTabLayout.setupWithViewPager(mViewPager);
4、TabLayout其他属性:
app:tabBackground="@color/tabBg"
app:tabIndicatorColor="#e6b009"
app:tabIndicatorHeight="5dp"
app:tabSelectedTextColor="#0a20e9"
app:tabTextColor="#13e24e"
tabBackground是TabLayout的背景色,也可以直接background来设置
tabIndicatorColor 选中TabItem的时候下面的线条提示的颜色
tabIndicatorHeight选中TabItem的时候下面的线条提示的高度
tabSelectedTextColor选中TabItem的文字颜色
tabTextColor为选中的TabItem的文字颜色
设置字体大小:
app:tabTextAppearance="@style/TabItemTextStyle"
<style name="TabItemTextStyle" parent="TextAppearance.Design.Tab">
<item name="android:textSize">14sp</item>
</style>