我该如何在Android中更改滚动条的颜色?

3

当前的问题是我们的主题继承自Theme.AppCompat,它似乎有一个白色的滚动条,在白色背景上并不可见。我知道我可以使用

<item name="android:scrollbarThumbVertical">@drawable/scroll_thumb</item>

我需要为自定义滚动条创建一个形状。但我只想将其更改为深色。当我使用简单的彩色矩形形状时,它的宽度与正常滚动条不同。

这是否可能?


请在XML布局中使用android:scrollbarThumbVertical="@drawable/custom_scroll_style",而不是在主题style.xml中使用。 - Kishore Jethava
谢谢,但我想更改主题,因为它在许多地方都被使用,我不想编辑所有的布局文件。 - Björn Kechel
@Karan Mer,感谢提供的信息。colorAccent需要API Level 21,但我需要支持到Level 15,你有什么想法如何为旧版本设置它吗? - Björn Kechel
我将在下午离线,所以接下来的几个小时内无法回复。 - Björn Kechel
再次感谢你,卡兰。但是android:colorAccent仍然需要21级别,你是否也知道当更改此值时除了滚动条之外还会发生什么变化? - Björn Kechel
显示剩余2条评论
1个回答

12

好的,可以为scrollbarThumbVertical项目值使用颜色,但这将改变其宽度,因此我将其大小设置为4dp,这似乎与具有本地滚动条的其他视图相同。

    <item name="android:scrollbarSize">4dp</item>
    <item name="android:scrollbarThumbVertical">@color/scrollbar_thumb</item>

我不喜欢设置尺寸,但我没有看到其他更干净的方式。


Bjorn,你实际上在哪里包含了那两行代码? - Daniele B
2
好的,我刚刚发现了。它们应该在AppTheme样式内部:<style name="AppTheme"....>这里</style>。 - Daniele B
很高兴听到你找到了它,我当时不在线,抱歉。 - Björn Kechel

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接