仅更改Holo主题进度条颜色

时间:2014-10-22 13:47:40

标签: android android-progressbar

我想更改android Holo主题的默认进度条颜色并保持默认行为。

我的目标是保持进度条不变(保留所有默认行为)并仅将其颜色更改为紫色。 我想改变水平和不确定。

这是我到目前为止所做的:

progressBar.getProgressDrawable().setColorFilter(Color.parseColor(#b845b2, PorterDuff.Mode.SRC_IN);
progressBar.getIndeterminateDrawable().setColorFilter(Color.parseColor(#b845b2,PorterDuff.Mode.SRC_IN);

这是有效的,除了一个小的副作用,它将辅助进度条更改为浅紫色,而默认进度条为灰色,我希望它默认为灰色。

这些是默认颜色 this is the default colors 这是我迄今为止所取得的成就,但我希望右边的浅紫色是第一张照片的灰色 this is what I've achieved so far, but I want the light purple from right to be grey as the first picture

请帮我解决这个问题。

2 个答案:

答案 0 :(得分:1)

由于所有东西都被涂上了颜色过滤器,你将无法这样做。

您需要设置正确的图像。您可以使用此工具生成它们:Android Holo Colors。它也会在右侧部分涂上淡紫色,但您可以编辑图像文件以使其变灰。

如果您使用该工具,它将创建9patch图像以及您需要放入主题xml文件中的内容。

答案 1 :(得分:0)

在较新的设备上,您还可以在主题(styles.xml)中定义:

<item name="colorControlNormal">@color/grey</item>
<item name="colorControlActivated">@color/purple</item>