gpt4 book ai didi

android - 使用 ProgressBar.setProgressDrawable 的颜色问题

转载 作者:行者123 更新时间:2023-11-29 00:45:49 26 4
gpt4 key购买 nike

我在列表的元素中附加进度条,并动态更新该进度条。但我面临的奇怪情况是..

当我的列表中有多个元素并且我使用 Progressbar.setProgressDrwable() 更改进度条的颜色时,列表中的所有进度条都会更新,并且它们的颜色会根据需要更改。

但是当列表中只有一个元素时,此方法不起作用,我只能看到进度条的背景而不是颜色。

我还为进度条的背景和颜色创建了我的 XML 文件,但它也不起作用。

我的 ProgressDrawable 的 XMl 代码是

FirstColor.xml

<item android:id="@android:id/background">
<shape>
<corners android:radius="15dip" />
<gradient android:startColor="#A9A9A9" android:centerColor="#A9A9A9"
android:endColor="#A9A9A9" android:angle="90" />
<stroke android:width="5dp" android:color="#A9A9A9" />
</shape>
</item>

<item android:id="@android:id/progress">
<scale android:scaleGravity="left" android:scaleWidth="100%" >
<shape>
<corners android:radius="15dip" />
<gradient android:startColor="#ADFF2F" android:centerColor="#ADFF2F"
android:endColor="#ADFF2F" android:angle="90" />
<stroke android:width="5dp" android:color="#ADFF2F" />
</shape>
</scale>
</item>

SecondColor.xml

<item android:id="@android:id/background">
<shape>
<corners android:radius="15dip" />
<gradient android:startColor="#A9A9A9" android:centerColor="#A9A9A9"
android:endColor="#A9A9A9" android:angle="90" />
<stroke android:width="5dp" android:color="#A9A9A9" />
</shape>
</item>

<item android:id="@android:id/progress">
<scale android:scaleGravity="left" android:scaleWidth="100%" >
<shape>
<corners android:radius="15dip" />
<gradient android:startColor="#FFBF00" android:centerColor="#FFBF00"
android:endColor="#FFBF00" android:angle="90" />
<stroke android:width="5dp" android:color="#FFBF00" />
</shape>
</scale>
</item>

我用来改变进度条颜色的java代码是

progressbar1.setProgressDrawable(getResources().getDrawable(R.drawable.FirstColor)); progressbar1.setProgress(amntPercentage.intValue());

progressbar1.setProgressDrawable(getResources().getDrawable(R.drawable.SecondColor)); progressbar1.setProgress(amntPercentage.intValue());

如果有人能解决我的问题,那将是一个很大的帮助..提前致谢..

最佳答案

在设置新的 progressDrawable 和设置 progressvalue 之前,请确保您没有将 progressvalue 设置为“0”。发生这种情况是因为在进度条的 style.xml 中,我们只为开始、中间和结束定义了 xml 字段;不适用于“0”。

我在更改可绘制对象之前将进度值设置为“1”,我的项目运行良好。

关于android - 使用 ProgressBar.setProgressDrawable 的颜色问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6488979/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com