我需要创建一些没有对话框的进度条,如下所示:
我找不到如何创建自定义进度条并在主要活动中使用它(不在对话框中)。这个红色条包含2个小图像,我需要在我的线程工作时连续添加它们。 现在有什么办法呢? 也许最好使用动画? 任何的想法 ? 感谢
答案 0 :(得分:1)
实际上有一个ProgressBar小部件。
<ProgressBar
android:id="@+id/pb"
style="@android:style/Widget.ProgressBar.Horizontal"
android:layout_width="match_parent"
android:layout_height="10dp"
android:max="100"
android:progressDrawable="@drawable/progressbar" />
和进度条可绘制,例如
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
<item android:id="@android:id/background">
<shape>
<gradient
android:angle="270"
android:centerColor="#AA444444"
android:centerY="0.5"
android:endColor="#88000000"
android:startColor="#88000000" />
</shape>
</item>
<item android:id="@android:id/progress">
<clip>
<shape>
<gradient
android:angle="270"
android:centerColor="#FFFFFF44"
android:centerY="0.5"
android:endColor="#FFAAAA00"
android:startColor="#FFAAAA00" />
</shape>
</clip>
</item>
<item android:id="@android:id/secondaryProgress">
<clip>
<shape>
<gradient
android:angle="270"
android:centerColor="#FF88FF88"
android:centerY="0.5"
android:endColor="#FF44AA44"
android:startColor="#FF44AA44" />
</shape>
</clip>
</item>
</layer-list>
对于来自您的主题的更新,使用progressbar.setProgress()
或progressBar.setSecondaryProgress()
发布可运行的内容,甚至更好,请使用AsyncTask
并致电publishProgress
并接听{ {1}}