前言

Jetpack Compose ScrollableTabRow 在使用的时候, 会发现无论怎么样, 最小的宽度始终不是自己设置的. 每个 Tab 之间间隔的很大. 而我们的 UI 上的效果是比较紧凑的. 所以这里给出解决方案

问题原因

在 ScrollableTabRow 的实现中, 使用了一个叫做 ScrollableTabRowMinimumTabWidth 的值, 他的值是:90.dp

由于这个值外部没法修改. 导致任何情况下你的 Tab 最小的宽度都是 90.dp


如何解决

目前的解决方式就只有一种, 那就是复制整个 TabRow 的源码. 然后对其中的 ScrollableTabRowMinimumTabWidth 的值进行修改!!!

Google 在不修改源码的情况下也没有其他方式. 所以认命吧. 该死的 Compose. 踩坑达人就是我!

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐