进度条是UI界面中一种非常实用的组件,通常用于向用户像是某个耗时操作完成的百分比。进度条可动态地显示进度,因此避免长时间地执行某个操作时,让用户感觉程序失去了响应,从而更好地提高用户界面的友好性。ProgressBar本身代表着进度条组件,其子类还包括SeekBar(拖动条)和RatingBar(星级评分条)。
一、ProgressBar使用详解
1.环形进度条使用方法
(1)进度条样式
(2)代码实现
- <ProgressBar android:id="@+id/progressBar"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- style="@android:style/Widget.ProgressBar.Large"/>
总结:我们可以通过设置ProgressBar的style属性实现不同大小的环形进度条,
ProgressBar常用的XML属性如下
2.显示进度精度进度条使用方法
(1)android:max:设置该进度条的最大值;
(2)android:progress:设置该进度条的已完成进度值;
(3)android:progressDrawable:设置该进度条的轨道对应的Drawable对象;
(4)android:indeterminate:该属性设为true,设置进度条不精确显示进度;
(5)android:indeteminateDrawable:设置绘制不显示进度的进度条的Drawable对象;
(6)android:indeteminateDuration:设置不精确显示进度的持续时间
(7)style属性:设置进度条的风格,支持以下几个属性
◇@android:style/Widget.ProgressBar.Horizontal:水平进度条
◇@android:style/Widget.ProgressBar.Inverse:普通大小的进度条
◇@android:style/Widget.ProgressBar.Large:大环形进度条
◇@android:style/Widget.ProgressBar.Large.Inverse:大环形进度条
◇@android:style/Widget.ProgressBar.Small:小环形进度条
◇@android:style/Widget.ProgressBar.Small.Inverse:小环形进度条
(1)进度条样式
(2)代码实现
>业务逻辑代码:模拟进度条的进度显示
- public class MainActivity extends ActionBarActivity {
- private int[] data = new int[100];
- int hasData = 0;
- int status = 0;
- ProgressBar bar, bar1;
- // 创建一个负责更新的进度的Handler
- Handler handler = new Handler() {
- public void handleMessage(android.os.Message msg) {
- if (msg.what == 0x111) {
- bar.setProgress(status);
- bar1.setProgress(status);
- }
- };
- };