Android——可修改字体大小和指示器长度的XTabLayout
来源:互联网 发布:cs1.6弹道优化参数 编辑:程序博客网 时间:2024/06/04 19:46
XTabLayout是基于design包中的TabLayout进行了功能的扩展,在保留原有功能的基础上,增加了修改选中项字体大小、修改指示器长度以及限制屏幕显示范围内显示的Tab个数。先看效果图:
集成步骤:
1.添加XTabLayout依赖库
在app目录下的build.gradle的dependencies中添加如下引用:
compile 'com.androidkun:XTabLayout:1.0.8'
2.在布局文件中设置XTabLayout属性:
<com.androidkun.xtablayout.XTabLayout android:id="@+id/xTablayout" android:layout_width="match_parent" android:layout_height="50dp" app:xTabMode="scrollable" app:xTabIndicatorColor="#0f0" app:xTabIndicatorHeight="4dp" app:xTabIndicatorWidth="15dp" app:xTabSelectedTextColor="#f00" app:xTabTextColor="#000" app:xTabTextSize="15sp" app:xTabSelectedTextSize="20sp"/>
TabLayout有的属性,在XTabLayout中都会有,属性名称都是前面加个x,后面的t变成大写。
其中增加了xTabIndicatorWidth用于设置指示器长度,xTabTextSize用于设置未选中项的字体大小,xTabSelectedTextSize用于设置选中项的字体大小。
此外1.0.1以及后面的版本中添加如下属性可以设置屏幕范围内显示的Tab个数
app:xTabDisplayNum="3"
或则在代码中添加
tabLayout.setxTabDisplayNum(3);//需要写在setupWithViewPager前tabLayout.setupWithViewPager(viewPager);
这里我们限制为3个,则每个tab的宽度为屏幕的1/3,显示效果如下:
需要注意显示的个数会受Adapter的ItemCount影响,例如ItemCount为3,但是我们设置app:xTabDisplayNum=“4”,那么显示出来的Tab的宽度其实是屏幕的1/3,并非1/4。
3.初始化:
XTabLayout的使用方式和TabLayout是一样的,代码如下:
//将TabLayout和ViewPager关联起来。XTabLayout tabLayout = (XTabLayout) findViewById(R.id.xTablayout);tabLayout.setupWithViewPager(viewPager);
更新日志
1.0.3
修改只有一个Tab时Tab未占满屏幕的bug。
1.0.4
增加设置Tab背景色的功能。
app:xTabBackgroundColor="#fff"app:xTabSelectedBackgroundColor="#ff0"
两个属性分别对应Tab未选中和被选中的背景色,效果图如下:
1.0.5 & 1.0.6
增加设置指示器长度随Tab文本内容长度变化的功能。
使用方式:不设置xTabIndicatorWidth属性即可
1.0.7
增加设置标题字母大小写转换功能,默认小写不自动转大写
使用方式:在xml文件中添加app:xTabTextAllCaps=”false”或者在代码中调用xTabLayout.setAllCaps(false).
1.0.8
增加设置分割线功能
使用方式:
1.xml:
app:xTabDividerWidth="2dp" app:xTabDividerHeight="15dp" app:xTabDividerColor="#000" app:xTabDividerGravity="center"
不设置xTabDividerHeight属性或者赋值为0时则分割线高度占满
2.java:
tabLayout.setDividerSize(5,20); tabLayout.setDividerColor(Color.BLACK); tabLayout.setDividerGravity(DividerDrawable.CENTER);
setDividerSize方法中第二个参数为高度,如果设置为0时则分割线高度占满
——————————————————————————————————————
如果对你有帮助,请点击下方Source到GitHub给个start,谢谢!
Source
Demo
4 0
- Android——可修改字体大小和指示器长度的XTabLayout
- 修改TabLayout指示器的长度
- Android Launcher分析和修改11——自定义分页指示器
- Android Launcher分析和修改11——自定义分页指示器(paged_view_indicator)
- Android 开发 Tip 19 -- 修改Menu的字体大小和样式
- XTabLayout
- text——修改android系统默认字体大小
- Android studio的小小知识点--修改字体大小
- Android Studio修改字体大小的方法
- Android studio 修改项目列表的字体大小
- 修改Tabhost样式和字体大小的方法
- 如何修改UIButton的字体大小和颜色
- 修改UITabbaritems的字体大小和选中颜色
- TextFiled修改placeholder的颜色和字体大小
- Android 根据显示长度 调整字体大小的 TextView
- 修改android系统字体大小
- 修改Android系统字体大小
- android修改字体大小
- 基于jquery实现输入框的自动补全功能
- 用 css 限制文本显示长度
- 关于VS中解决方案的文件目录类型
- Android Toolbar标题居中和自定义字体(toolbar是和drawerlayout联动情况下)
- opencv-python人眼识别图像处理基础
- Android——可修改字体大小和指示器长度的XTabLayout
- 【备忘】传智播客-Java就业班 视频教程下载
- 公司内部SQL联合查询
- Android:控件布局(相对布局)RelativeLayout
- Spring学习手记
- MyBatis的一级缓存实现详解 及使用注意事项
- Android NDK将C++/C编译成so文件
- 冒泡排序和选择排序
- 为什么Mysql使用多线程,而Oracle使用多进程