Android修行手册 - TabLayout全解析-主要属性

举报
芝麻粒儿 发表于 2022/09/24 21:33:50 2022/09/24
【摘要】 👉关于作者众所周知,人生是一个漫长的流程,不断克服困难,不断反思前进的过程。在这个过程中会产生很多对于人生的质疑和思考,于是我决定将自己的思考,经验和故事全部分享出来,以此寻找共鸣!!!专注于Android/Unity和各种游戏开发技巧,以及各种资源分享(网站、工具、素材、源码、游戏等)欢迎关注公众号【空名先生】获取更多资源和交流! 👉前提这是小空坚持写的Android新手向系列,欢迎...

👉关于作者

众所周知,人生是一个漫长的流程,不断克服困难,不断反思前进的过程。在这个过程中会产生很多对于人生的质疑和思考,于是我决定将自己的思考,经验和故事全部分享出来,以此寻找共鸣!!!

专注于Android/Unity和各种游戏开发技巧,以及各种资源分享(网站、工具、素材、源码、游戏等)

欢迎关注公众号【空名先生】获取更多资源和交流!

👉前提

这是小空坚持写的Android新手向系列,欢迎品尝。

新手(√√√)

大佬(√)

👉实践过程

我们接着昨天的讲哈

😜TabLayout属性

  • app:tabTextColor="":设置tab未被选中时候文本的颜色。
  • app:tabSelectedTextColor="":设置tab选中时候文本的颜色。
  • app:tabIndicatorColor="":设置指示器的颜色,即文本下方的横条。
  • app:tabIndicatorHeight=“10dp”:设置指示器的高度,即横条的高度。
  • app:tabBackground="@color/color_00ff00":设置TabLayout组件的背景色,注意该值需要是attr,也就是资源引用,无法输入类似”#123456”的具体颜色值。
  • app:tabTextAppearance="@style/YourStyle":设置style.xml文件中样式引用,一般是关于文本的属性设置,并且文本大小的设置只有这一种方式。默认的字体大小使用的是design_tab_text_size,自己在dimens.xml中覆写上就可以替换系统的设置。
  • app:tabMode="":有三个值【auto、fixed、scrollable】默认是fixed,表示item默认填充满且平均分布,当item过多的时候,越文本多的item字体会越小进而导致不规范,而scrollable则是表示该TabLayout表示可滑动,很多新闻类应用上方的滑动切换标签都是这样的。
  • app:tabGravity="":有三个值【fill、center、start】默认是fill,并且需要tabMode为fixed时才有效,center其实是按照wrap_content的形式居中显示。和tabMaxWidth、tabMinWidth属性不能共用。
  • tabMinWidth="": 设置Tab的最小宽度,和app:tabGravity属性互斥。
  • tabMaxWidth="":设置Tab的最大宽度,和app:tabGravity属性互斥。
  • tabContentStart:官方说设置TabLayout开始位置的偏移量,但是小空没用过,不知道具体啥样。
  • tabPadding,tabPaddingStart,tabPaddingEnd,tabPaddingTop,tabPaddingBottom:设置tab项的内边距。
  • app:tabIconTint="":设置文本上面的图标颜色,结合tabIconTintMode使用,这个颜色设置后其实是控制的图标的一个方形区域内所有的颜色,即使这个图标是透明PNG里面内容没有宽高,最终的展示效果受tabIconTintMode影响。你可以找一个红心图片,该属性设置为绿色,tabIconTintMode设置为add就能看出来了。
  • app:tabIconTintMode="":用来设置TabItem的图标颜色和tabIconTint设置的颜色是什么样的混合模式。共有6个值:src_atop、src_over、add、screen、src_in、multiply(更多详情可查询资料xfermode,涉及的内容很多不是一两句话说的清的)。
  • app:tabIndicatorFullWidth:设置指示器是否沾满整个Item的宽度,当true的时候每个item会根据自身的宽度设置指示器的宽度,默认为true。如果是false表示指示器的宽度一般会随着item中文本的宽度而设定。
  • app:tabIndicatorGravity=“bottom”:设置指示器所在的位置,有四个值【top、bottom、center、stretch】。Top表示在最上方,也就是图片上方,center表示指示器在图片和文字的中间,stretchj表示占满整个item,默认是bottom,也就是在底部。
  • app:tabIndicatorAnimationDuration=“3000”:表示设置指示器的动画时间。
  • app:tabIndicatorAnimationMode="":表示设置动画模式,有两个值【linear、elastic】,elastic表示是弹性的,也就是在切换过程中会逐渐拉长然后收缩为正常;而linear表示指示器一直是默认长度。
  • tabInlineLabel="":表示设置图标和文件的方向(默认为false),false表示图片在上文本在下,true表示图片在左文本在右。
  • app:tabRippleColor="@color/color_00ff00":表示设置点击item的时候水波纹的颜色。
  • app:tabUnboundedRipple=“true”:表示水波纹是否有边界,默认是false代表有边界,点击的时候会看到看方形背景,设置为true则无边框,背景为圆。

👉其他

📢作者:小空和小芝中的小空

📢转载说明-务必注明来源:芝麻粒儿 的个人主页 - 专栏 - 掘金 (juejin.cn)

📢这位道友请留步☁️,我观你气度不凡,谈吐间隐隐有王者霸气💚,日后定有一番大作为📝!!!旁边有点赞👍收藏🌟今日传你,点了吧,未来你成功☀️,我分文不取,若不成功⚡️,也好回来找我。

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。