androidTabLayout的指示器宽度问题-创新互联

最近碰到一个需求,因为是我比较感兴趣的TabLayout的,所以记录一下吧。

我们提供的服务有:网站设计制作、做网站、微信公众号开发、网站优化、网站认证、左云ssl等。为上千企事业单位解决了网站和推广的问题。提供周到的售前咨询和贴心的售后服务,是有科学管理、有技术的左云网站制作公司
  1. 产品需求:希望上部导航栏中的指示器宽度略大于文字宽度;
  2. 技术方案:TabLayout配合ViewPager;
  3. 问题分析: 原生TabLayout的指示器宽度等于每个tab的宽度,远大于 tab内文字标题的宽度。

原因分析:


TabLayout(TL)继承自HorizontalScrollView,其只能添加一个子控件,这个子控件便是TL内部私有类–SlidingTabStrip,其继承自LinearLayout。指示器怎么加上的呢?便是在该类的onDraw方法中:


 @Override
public void draw(Canvas canvas) {
 super.draw(canvas);
 // Thick colored underline below the current selection
 if (mIndicatorLeft >= 0 && 
 mIndicatorRight > mIndicatorLeft) {
  canvas.drawRect(mIndicatorLeft, 
 mIndicatorRight, getHeight(), 
 mSelectedIndicatorPaint);
 }
}

新闻名称:androidTabLayout的指示器宽度问题-创新互联
本文来源:http://hxwzsj.com/article/disjch.html

其他资讯

Copyright © 2025 青羊区翔捷宏鑫字牌设计制作工作室(个体工商户) All Rights Reserved 蜀ICP备2025123194号-14
友情链接: 成都网站建设公司 LED网站设计方案 成都商城网站建设 高端网站设计 广安网站设计 企业网站制作 重庆手机网站建设 网站设计制作报价 成都企业网站建设公司 成都网站制作 定制网站设计 成都网站设计制作公司 成都网站建设 重庆企业网站建设 成都网站建设 成都网站制作 重庆网站制作 成都网站设计 成都网站设计 网站制作 手机网站制作 品牌网站建设