一板驳、TabLayout控件屬性
android.support.design:tabBackground — 設(shè)置的背景直砂。
android.support.design:tabContentStart — 相對起始位置tab的Y軸偏移量洽蛀。
android.support.design:tabGravity —
tab的布局方式,兩個值GRAVITY_CENTER (內(nèi)容中心顯示) 和 GRAVITY_FILL (內(nèi)容盡可能充滿TabLayout)。
android.support.design:tabIndicatorColor — 設(shè)置tab指示器(tab的下劃線)的顏色。
android.support.design:tabIndicatorHeight — 設(shè)置tab指示器(tab的下劃線)的高度。
android.support.design:tabMaxWidth — 設(shè)置tab選項卡的最大寬度。
android.support.design:tabMinWidth — 設(shè)置tab選項卡的最小寬度。
android.support.design:tabMode —
設(shè)置布局中tab選項卡的行為模式,兩個常量MODE_FIXED (固定的tab)和 MODE_SCROLLABLE(滑動的tab)睬澡。
android.support.design:tabPadding — 設(shè)置tab的內(nèi)邊距(上下左右)逝慧。
android.support.design:tabPaddingBottom — 設(shè)置tab的底部內(nèi)邊距沈堡。
android.support.design:tabPaddingEnd — 設(shè)置tab的右側(cè)內(nèi)邊距。
android.support.design:tabPaddingStart — 設(shè)置tab的左側(cè)內(nèi)邊距懂衩。
android.support.design:tabPaddingTop — 設(shè)置tab的上方內(nèi)邊距。
android.support.design:tabSelectedTextColor — 設(shè)置tab被選中時的文本顏色劣领。
android.support.design:tabTextColor — 設(shè)置tab默認(rèn)的文本顏色。
android.support.design:tabTextAppearance — 設(shè)置tab的TextAppearance樣式的引用饼丘,可以引用另一個資源益咬,
形式為“@ [+][package:] type / name”或主題屬性,格式為“抛腕?[package:] type / name”。攒暇。
二、TabLayout公共方法
addOnTabSelectedListener(TabLayout.OnTabSelectedListener listener)
添加一個TabLayout.OnTabSelectedListener監(jiān)聽事件,當(dāng)tab選擇更改時魄宏,它將被調(diào)用。
addTab(TabLayout.Tab tab垂涯,boolean setSelected)
向此布局添加選項卡。
addTab(TabLayout.Tab tab是掰,int position)
向此布局添加選項卡。
addTab(TabLayout.Tab tab)
向此布局添加選項卡。
addTab(TabLayout.Tab tab世澜,int position,boolean setSelected)
向此布局添加選項卡低飒。
addView(View child,int index)
添加子視圖到指定位置。
addView(View child)
添加子視圖。
addView(View child,ViewGroup.LayoutParams params)
添加具有指定布局參數(shù)的子視圖烁涌。
addView(View child撮执,int index颜凯,ViewGroup.LayoutParams params)
添加具有指定布局參數(shù)的子視圖症概。
clearOnTabSelectedListeners()
刪除所有以前添加的TabLayout.OnTabSelectedListeners秤涩。
FrameLayout.LayoutParams generateLayoutParams(AttributeSet attrs)
根據(jù)提供的屬性集返回一組新的布局參數(shù)匀谣。
int getSelectedTabPosition()
返回當(dāng)前所選標(biāo)簽的位置。
TabLayout.Tab getTabAt(int index)
返回指定位置的tab。
int getTabCount()
返回當(dāng)前在操作欄中注冊的選項卡數(shù)。
int getTabGravity()
返回當(dāng)前的標(biāo)簽tab的布局方式臊泰,GRAVITY_CENTER (內(nèi)容中心顯示) 和 GRAVITY_FILL (內(nèi)容盡可能充滿TabLayout)蛉加。
int getTabMode()
返回tab選項卡的行為模式,MODE_FIXED* (固定的tab)和 MODE_SCROLLABLE(滑動的tab)。
ColorStateList getTabTextColors()
獲取用于選項卡的不同狀態(tài)(正常缸逃,已選擇)的文本顏色针饥。
TabLayout.Tab newTab ()
創(chuàng)建并返回一個新的TabLayout.Tab。
removeAllTabs()
從操作欄中刪除所有選項卡需频,并取消選擇當(dāng)前選項卡丁眼。
removeOnTabSelectedListener(TabLayout.OnTabSelectedListener listener)
刪除以前通過addOnTabSelectedListener(OnTabSelectedListener)添加的給定
TabLayout.OnTabSelectedListener,tab選中監(jiān)聽器昭殉。
removeTab(TabLayout.Tab tab)
從布局中刪除選項卡苞七。
removeTabAt(int position)
從布局中刪除選項卡。
setOnTabSelectedListener(TabLayout.OnTabSelectedListener listener)
API方法24.0.0中已棄用此方法挪丢。使用addOnTabSelectedListener(OnTabSelectedListener)和removeOnTabSelectedListener(OnTabSelectedListener)蹂风。
setScrollPosition(int position,float positionOffset乾蓬,boolean updateSelectedText)
設(shè)置選項卡的滾動位置惠啄,當(dāng)標(biāo)簽tab顯示為滾動容器(如ViewPager)的一部分時,此功能非常有用任内。
參數(shù):
位置int:當(dāng)前滾動位置
positionOffset float:表示從位置偏移的[0, 1)的值撵渡。
updateSelectedText boolean:是否更新文本的選擇狀態(tài)。死嗦。
setSelectedTabIndicatorColor(int color)
設(shè)置選中的tab的指示器(下劃線)顏色趋距。
setSelectedTabIndicatorHeight(int height)
設(shè)置選中的tab的指示器的高度。
setTabGravity(int gravity)
設(shè)置TabLayout的布局方式越走,GRAVITY_CENTER (內(nèi)容中心顯示) 和 GRAVITY_FILL (內(nèi)容盡可能充滿TabLayout)棚品。。
setTabMode(int mode)
設(shè)置tab選項卡的行為模式,MODE_FIXED* (固定的tab)和 MODE_SCROLLABLE(滑動的tab)廊敌。
setTabTextColors(int normalColor,int selectedColor)
設(shè)置用于選項卡的不同狀態(tài)(常規(guī)门怪,選定)的文本顏色骡澈。
setTabTextColors(ColorStateList textColor)
設(shè)置用于選項卡的不同狀態(tài)(常規(guī),選定)的文本顏色掷空。
setTabsFromPagerAdapter(PagerAdapter adapter)
API方法23.2.0中已棄用此方法肋殴。使用setupWithViewPager(ViewPager)將TabLayout與ViewPager鏈接在一起囤锉。當(dāng)使用該方法時,當(dāng)更改PagerAdapter時护锤,TabLayout將自動更新官地。
setupWithViewPager(ViewPager viewPager,boolean autoRefresh)
將TabLayout與ViewPager鏈接在一起烙懦,當(dāng)更改PagerAdapter時驱入,TabLayout是否更新由autoRefresh決定。
setupWithViewPager(ViewPager viewPager)
將TabLayout與ViewPager鏈接在一起氯析。
shouldDelayChildPressedState()
如果此ViewGroup的子代或子孫后代按下的狀態(tài)應(yīng)該被延遲亏较,則返回true。 一般來說掩缓,應(yīng)該對可以滾動的容器(如List)進(jìn)行此操作雪情。 這防止當(dāng)用戶實(shí)際上嘗試滾動內(nèi)容時出現(xiàn)按壓狀態(tài)。 由于兼容性原因你辣,默認(rèn)實(shí)現(xiàn)返回true巡通。 不滾動的子類通常會覆蓋此方法并返回false。
三舍哄、TabLayout.Tab的公共方法
這里的方法宴凉,就不做中文說明了,看方法名就知道了蠢熄,而且上面已經(jīng)講到了setCustomView()和getCustomView()兩個方法跪解。