如何在Android中更改进度条的进度颜色

598

我正在使用Android应用程序中的水平进度条,并且想要更改其进度颜色(默认为黄色)。如何在代码中完成此操作(不使用XML)?


你尝试过使用MyProgressBar.setProgressDrawable(Drawable d)方法指定一个具有所需颜色的位图吗?http://developer.android.com/reference/android/widget/ProgressBar.html#setProgressDrawable(android.graphics.drawable.Drawable) http://developer.android.com/reference/android/graphics/drawable/Drawable.html - fupsduck
2
是的,我已经尝试过了,但它并没有起作用。它会设置整个进度条视图的背景颜色,而不是仅设置进度条本身的背景颜色。谢谢。 - WhiteTigerK
75
android:indeterminateTint="@android:color/white" 只在 API >=21 版本及以上有效。 - Madeyedexter
1
当您使用非确定性时,android:progressTint="@android:color/white" - Kamil
42个回答

0

我知道我来晚了,但如果您只想更改进度条的颜色,这是最简单的解决方案。在您的主题中,只需添加:

@color/your_color

colorSecondary 将会在整个进度条中更改您的进度颜色。


0

看起来在新版本的Material Design库中,不确定的线性进度指示器可以变成多色。

将进度条的动画类型设置为连续即可实现此效果。

  • 使用以下属性设置布局:
    app:indeterminateAnimationType
    
  • 或者使用以下方法进行编程设置:
    setIndeterminateAnimationType()
    

请参考此处获取更多信息。


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