Android5.0 TabLayout使用小结

Design库-TabLayout属性详解

TabLayout:提供了一个水平的布局用来展示Tabs
注意:如果出现一下情况,则需要android:theme="@style/Theme.AppCompat"

Caused by: java.lang.IllegalArgumentException: You need to use a Theme.AppCompat theme (or descendant) with the design library.

1.添加依赖包

compile 'com.android.support:design:22.2.0'

2.属性

  1. app:tabSelectedTextColor=”@android:color/holo_orange_light” 改变选中字体的颜色
  2. app:tabTextColor=”@color/colorPrimary” 改变未选中字体的颜色
  3. app:tabIndicatorColor=”@android:color/holo_orange_light” 改变指示器下标的颜色
  4. app:tabBackground=”color” 改变整个TabLayout的颜色
  5. app:tabTextAppearance=”@android:style/TextAppearance.Holo.Large” 改变TabLayout内部字体大小
  6. app:tabIndicatorHeight=”4dp” 改变指示器下标的高度
  7. app:tabMode=”scrollable” 设置模式,默认fixed
  8. 设置整个TabLayout的Padding app:paddingStart=”xxdp” app:paddingEnd=”xxdp”
  9. 设置Tab内部的子控件的Padding app:tabPadding、app:tabPaddingTop、app:tabPaddingStart、app:tabPaddingEnd、app:tabPaddingBottom
  10. app:tabGravity=”center” 内容的显示模式,center 居中,如果是fill,则是充满
  11. Tab的宽度限制 app:tabMaxWidth=”xxdp” 设置最大的tab宽度;app:tabMinWidth 设置最小的tab宽度
  12. app:tabContentStart=”100dp” TabLayout开始位置的偏移量

3.常用方法

  • addTab(TabLayout.Tab tab, int position, boolean setSelected) 增加选项卡到 layout 中

  • addTab(TabLayout.Tab tab, boolean setSelected) 同上

  • addTab(TabLayout.Tab tab) 同上

  • getTabAt(int index) 得到选项卡

  • getTabCount() 得到选项卡的总个数

  • getTabGravity() 得到 tab 的 Gravity

  • getTabMode() 得到 tab 的模式

  • getTabTextColors() 得到 tab 中文本的颜色

  • newTab() 新建个 tab

  • removeAllTabs() 移除所有的 tab

  • removeTab(TabLayout.Tab tab) 移除指定的 tab

  • removeTabAt(int position) 移除指定位置的 tab

  • setOnTabSelectedListener(TabLayout.OnTabSelectedListener onTabSelectedListener) 为每个 tab 增加选择监听器

  • setScrollPosition(int position, float positionOffset, boolean updateSelectedText) 设置滚动位置

  • setTabGravity(int gravity) 设置 Gravity

  • setTabMode(int mode) 设置 Mode,有两种值:TabLayout.MODE_SCROLLABLE和TabLayout.MODE_FIXED分别表示当tab的内容超过屏幕宽度是否支持横向水平滑动,第一种支持滑动,第二种不支持,默认不支持水平滑动。

  • setTabTextColors(ColorStateList textColor) 设置 tab 中文本的颜色

  • setTabTextColors(int normalColor, int selectedColor) 设置 tab 中文本的颜色 默认 选中

  • setTabsFromPagerAdapter(PagerAdapter adapter) 设置 PagerAdapter

  • setupWithViewPager(ViewPager viewPager) 和 ViewPager 联动

4.示例

Design库-TabLayout仿京东商品详情Tab

你可能感兴趣的:(Android5.0 TabLayout使用小结)