安卓使用tablayout ,字体为什么大小不一致?

做什么就是什么 2016-07-04 07:11:54


如图,
...全文
2510 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
qiushuilingxing 2017-10-18
  • 打赏
  • 举报
回复
qiushuilingxing 2017-10-18
  • 打赏
  • 举报
回复
/** * 清除tab的内间距,避免因为固定内间距导致长的文字被压缩 * 但是在字体大的时候会明显看出tab之间的间距不一致。所以用这个方法将tab文字变成大小一致后,字体大小酌情设置。 */ public void setTabPadding() { Class tablayout = tabLayout.getClass(); Field tabStrip = null; try { tabStrip = tablayout.getDeclaredField("mTabStrip"); tabStrip.setAccessible(true); LinearLayout ll_tab = (LinearLayout) tabStrip.get(tabLayout); for (int i = 0; i < ll_tab.getChildCount(); i++) { View child = ll_tab.getChildAt(i); child.setPadding(0, 0, 0, 0); LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(0, LinearLayout.LayoutParams.MATCH_PARENT, 1); child.setLayoutParams(params); child.invalidate(); // 这个方法是重画 } } catch (NoSuchFieldException e) { e.printStackTrace(); } catch (IllegalAccessException e) { e.printStackTrace(); } }
月盡天明 2017-05-15
  • 打赏
  • 举报
回复
http://blog.csdn.net/crazy1235/article/details/71425135 完美解决!!!
CuTea 2016-12-07
  • 打赏
  • 举报
回复
引用 7 楼 xwmj987 的回复:
用的是系统自带的,吧tabMode换成scrollable 就这个正常显示。 缩小字体,可以做到显示一致。但是要求字体这么大, 后来加了tabPadding 这个属性就正常了。
tabpadding怎么修改才能正常,能 不能说说具体修改方法? 我也是同样问题,弄了好几天了
CuTea 2016-12-07
  • 打赏
  • 举报
回复
楼主你是怎么解决的,能贴出具体的修改方法吗,我也遇到了这个问题
  • 打赏
  • 举报
回复
用的是系统自带的,吧tabMode换成scrollable 就这个正常显示。 缩小字体,可以做到显示一致。但是要求字体这么大, 后来加了tabPadding 这个属性就正常了。
秃头地中海 2016-07-05
  • 打赏
  • 举报
回复
布局文件一贴一目了然
tudouzi007 2016-07-05
  • 打赏
  • 举报
回复
你是不是4个tab设置android:layout_weight="1"这个属性了,4等分,每一个占的空间一样大,当字数多了所以就要缩小以便全放下,你是不是也设置了只能一行不能回行的属性,这个就要看你的需求做选择了 没代码全靠猜 错了别见怪
  • 打赏
  • 举报
回复
8成是1楼的原因
Eye_of_Skadi 2016-07-05
  • 打赏
  • 举报
回复
我觉得不是一楼说的问题,如果是权重问题只会将放不下的文字堆成两行,不会改变字体大小吧
moonFY 2016-07-05
  • 打赏
  • 举报
回复
8成是1楼的原因
jklwan 2016-07-05
  • 打赏
  • 举报
回复
需要使用setCustomView设置一个自定义view来显示,自带的是会这样的。

80,351

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧