【发布时间】:2016-07-06 13:24:06
【问题描述】:
我正在开发一个使用不同进度条的应用程序,我希望它们看起来像 Google 中的那样,带有圆角。 我为每个具有不同颜色的条有一个自定义可绘制对象,它使外角圆而不是内角,如您在此处看到的: 我的自定义drawable是:
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@android:id/background">
<shape>
<corners android:radius="@dimen/progress_bar_rounded" />
<solid android:color="@color/progressbarBackground" />
</shape>
</item>
<item android:id="@android:id/progress">
<clip>
<shape>
<corners android:radius="@dimen/progress_bar_rounded" />
<solid android:color="@color/progressbarGreen" />
</shape>
</clip>
</item>
</layer-list>
进度条代码是:
<ProgressBar
style="?android:attr/progressBarStyleHorizontal"
android:layout_width="fill_parent"
android:layout_height="@dimen/progress_bar_high"
android:id="@+id/GreenProgressBar"
android:indeterminate="false"
android:layout_marginLeft="15dp"
android:layout_gravity="center_vertical"
android:progressDrawable="@drawable/custom_green_progressbar" />
我可以使用一些库作为https://github.com/akexorcist/Android-RoundCornerProgressBar,但由于它是如此简单,我认为它不值得。 我也一直在寻找不同的线程,但没有任何东西对我有用。 有什么想法,如果可能的话,不必使用 .9.png 图像?
非常感谢!
【问题讨论】:
-
是的,我已经看过那个帖子了,但我不想 ude .9.png 因为颜色可能会改变,而且我不明白第二个帖子。
-
@Javierd98 你可以使用
progressTint来改变颜色 -
这9个补丁好像不是必须的,换成形状就行了
标签: android material-design android-progressbar