zl程序教程

您现在的位置是:首页 >  移动开发

当前栏目

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

Android属性 解析 手册 主要 修行
2023-09-14 09:04:16 时间
往期文章分享

👉关于作者

众所周知,人生是一个漫长的流程,不断克服困难,不断反思前进的过程。在这个过程中会产生很多对于人生的质疑和思考,于是我决定将自己的思考,经验和故事全部分享出来,以此寻找共鸣 !!!
专注于Android/Unity和各种游戏开发技巧,以及各种资源分享(网站、工具、素材、源码、游戏等)
有什么需要欢迎私我,交流群让学习不再孤单

在这里插入图片描述

本文约4千字,新手阅读需要7分钟,复习需要3分钟收藏随时查阅不再迷路

👉实践过程

我们接着昨天的讲哈

😜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则无边框,背景为圆。

👉其他

📢作者:小空和小芝中的小空
📢转载说明-务必注明来源:https://zhima.blog.csdn.net/
📢这位道友请留步☁️,我观你气度不凡,谈吐间隐隐有王者霸气💚,日后定有一番大作为📝!!!旁边有点赞👍收藏🌟今日传你,点了吧,未来你成功☀️,我分文不取,若不成功⚡️,也好回来找我。

温馨提示点击下方卡片获取更多意想不到的资源。
空名先生