java - Android Seekbar Progress Color 在运行时

标签 java android background seekbar

我想在运行时使用代码而不是 xml 更改搜索栏进度颜色和背景颜色。我知道如何使用 xml(Layerlist-Shapedrawable-Clipdrawable) 我无法更改 colors.xml 中的颜色,因此我必须通过代码设置可绘制进度。 我已经用 LayerDrawable 等尝试了不同的东西......但没有得到任何工作。 有什么想法吗?

最佳答案

public void setProgressBarColor(ProgressBar progressBar, int newColor){ 
    LayerDrawable ld = (LayerDrawable) progressBar.getProgressDrawable();
    ClipDrawable d1 = (ClipDrawable) ld.findDrawableByLayerId(R.id.progressshape);
    d1.setColorFilter(newColor, PorterDuff.Mode.SRC_IN);

}

当你更新进度时,你会看到结果。

可以吗?

关于java - Android Seekbar Progress Color 在运行时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12834630/

相关文章:

android - React Native 的动画转换无法正常工作

android - 用背景图像填充android并在横向和纵向 View 中保持它

android - 如何加密和解密音频文件android

css - 如何让背景适合整个屏幕?

java - Android中如何将popupMenu添加到listView的项目中?

java - Android ACRA 自定义 ReportSender 发送方法调用两次

css - Google Chrome 中 flash <embed> 标签周围的白色背景

html - 带有标题文本和透明背景的不同边框

java - JFreeChart - 具有垂直 DateAxis 的条形图

java - 如何通过 java 代码将 java HashMap 转换为不可变的 Scala 映射?