Android Design庫 TabLayout系統屬性
轉載:http://www.lxweimin.com/p/2b2bb6be83a8
http://www.lxweimin.com/p/be1e8a1da639?nomobile=yes
1.改變選中字體的顏色
app:tabSelectedTextColor="@android:color/holo_orange_light"
2.改變未選中字體的顏色
app:tabTextColor="@color/colorPrimary"
3.改變指示器下標的顏色
app:tabIndicatorColor="@android:color/holo_orange_light"
4.改變整個TabLayout的顏色
app:tabBackground="color"
于是現在我的Tab變成了這個樣子:
4.改變TabLayout內部字體大小
app:tabTextAppearance="@android:style/TextAppearance.Holo.Large"http://設置文字的外貌
效果:
5.改變指示器下標的高度
app:tabIndicatorHeight="4dp"
效果:
6.添加圖標
tabLayout.addTab(tabLayout.newTab().setText("Tab 1").setIcon(R.mipmap.ic_launcher));
7.Tab的模式
默認是fixed:固定的,標簽很多時候會被擠壓,不能滑動。
設置為可滑動:
app:tabMode="scrollable"
效果如下:
8.加入Padding
設置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"
9.內容的顯示模式
app:tabGravity="center"http://居中,如果是fill,則是充滿
10.Tab的寬度限制
app:tabMaxWidth="xxdp"
app:tabMinWidth="xxdp"
11.Tab的偏移量“Margin”
開始位置的偏移量:
app:tabContentStart="100dp"
12.TabLayout的監聽事件
選中了某個tab的監聽事件OnTabSelectedListener():
tabLayout.setOnTabSelectedListener(newTabLayout.OnTabSelectedListener() {
@Override
public voidonTabSelected(TabLayout.Tab tab) {
//選中了tab的邏輯
}
@Override
public voidonTabUnselected(TabLayout.Tab tab) {
//未選中tab的邏輯
}
@Override
public voidonTabReselected(TabLayout.Tab tab) {
//再次選中tab的邏輯
}
});
13.ViewPager的聯動
最后也是最重要的:
tabLayout.setupWithViewPager(Viewpager);
14.簡單模仿簡書Android端的Tab
設置下標的高度為0,相當于沒有下標:
app:tabIndicatorHeight="0dp"
設置背景顏色以及選中文字顏色
app:tabSelectedTextColor="#ff7a61"
app:tabBackground="#f6f4f2"http://這里不能直接寫RGB,需要@color/xx
最后設置Tab的模式:
app:tabMode="scrollable"