Android– 在Lollipop前设备上设置ProgressBar

Android– 在Lollipop前设备上设置ProgressBar,第1张

概述我的应用程序的最低API级别是19(KitKat),并包含一个带有水平ProgressBar的布局.我正在使用android:progressTint属性将条形色调为自定义颜色.它在Lollipop(API21)及更高版本上运行良好,但在下面(例如在API19上)它没有;它以不同的颜色显示出来.原因是这个属性isonlyusedinAP

我的应用程序的最低API级别是19(KitKat),并包含一个带有水平Progressbar的布局.我正在使用android:progresstint属性将条形色调为自定义颜色.它在Lollipop(API 21)及更高版本上运行良好,但在下面(例如在API 19上)它没有;它以不同的颜色显示出来.原因是这个属性

is only used in API level 21 and higher

正如Android Studio所述.

所以我想知道什么是在Lollipop前设备上对Progressbar进行着色的好方法.可以使用XML在布局文件中创建吗?或者应该以不同的方式完成?

编辑#1:我的Progressbar用于显示百分比的具体值,而不是用于指示我的布局正在加载.我想明确这一点,因为在尝试了Kuldeep Kulkarni在下面写的内容之后,我的酒吧看起来像一个材料加载指示器(当然在Lollipop设备上,而不是KitKat设备上的任何可见结果).

解决方法:

您可以使用Progressbar indeterminateDrawable方法包装前Lollipop.

if (Build.VERSION.SDK_INT < Build.VERSION_CODES.LolliPOP) {     Drawable drawableProgress = DrawableCompat.wrap(progressbar.getIndeterminateDrawable());     DrawableCompat.setTint(drawableProgress, ContextCompat.getcolor(getContext(), androID.R.color.holo_green_light));     progressbar.setIndeterminateDrawable(DrawableCompat.unwrap(drawableProgress));} else {    progressbar.getIndeterminateDrawable().setcolorFilter(ContextCompat.getcolor(getContext(), androID.R.color.holo_green_light), PorterDuff.Mode.SRC_IN);}
总结

以上是内存溢出为你收集整理的Android – 在Lollipop前设备上设置ProgressBar全部内容,希望文章能够帮你解决Android – 在Lollipop前设备上设置ProgressBar所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1098052.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-28
下一篇 2022-05-28

发表评论

登录后才能评论

评论列表(0条)

保存