【发布时间】:2015-06-10 09:52:44
【问题描述】:
看下面的图片:
在每张图片上,ProgressBar 与另一个 ProgressBar 的风格不同。
我想知道,如何在我的应用程序中指定进度条style/thin。
我查看了android.R.attr.progressBarStyleSmall,但它只是改变了进度条的大小,而不是旋转圆圈的厚度。
注意:不要发布假设创建自定义可绘制对象的答案。 图书馆允许。
【问题讨论】:
标签: android
看下面的图片:
在每张图片上,ProgressBar 与另一个 ProgressBar 的风格不同。
我想知道,如何在我的应用程序中指定进度条style/thin。
我查看了android.R.attr.progressBarStyleSmall,但它只是改变了进度条的大小,而不是旋转圆圈的厚度。
注意:不要发布假设创建自定义可绘制对象的答案。 图书馆允许。
【问题讨论】:
标签: android
你可以试试这个 git 库,它会帮助你并提供更多的定制......
https://github.com/castorflex/SmoothProgressBar
mProgressBar.setIndeterminateDrawable(new SmoothProgressDrawable.Builder(context)
.strokeWidth(8f) //You should use Resources#getDimension
.build());
您可以在此处指定任何笔画宽度。
【讨论】:
不能说您是否可以处理这些默认进度条,但您可以尝试使用另一种设计您自己的进度图像并在其上执行动画,就像这里一样,
现在在 res/drawable/customprogress.xml 中添加这个
<rotate xmlns:android="http://schemas.android.com/apk/res/android"
android:fromDegrees="0"
android:pivotX="50%"
android:pivotY="50%"
android:toDegrees="360" >
<shape
android:shape="oval"
android:useLevel="false" >
<size
android:height="48dip"
android:width="48dip" />
<gradient
android:centerColor="#ff000000"
android:centerY="0.50"
android:endColor="#ff00ff00"
android:startColor="#ff000000"
android:type="sweep"
android:useLevel="false" />
</shape>
</rotate>
并添加此进度条属性
android:indeterminateDrawable="@drawable/customprogress"
【讨论】: