今天来讲一下进度条(其实包含了刷新圈),主要讲基本常用的一些方法,先看一下图片就知道大概要讲的是什么了
1.基本的使用方法
默认的进度条是一个旋转的刷新圈,即没有参数的情况下
<ProgressBar
android:id="@+id/pb2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
style="@android:style/Widget.ProgressBar"/>
<ProgressBar
android:id="@+id/pb3"
android:layout_width="match_parent"
android:layout_height="20dp"
android:layout_marginTop="10dp"
style="@style/Widget.AppCompat.ProgressBar.Horizontal"
/>
如上的代码写出来是两个转动的圆弧,效果如下:
但是要写一个进度条要怎么写呢
<ProgressBar
android:id="@+id/pb3"
android:layout_width="match_parent"
android:layout_height="20dp"
android:layout_marginTop="10dp"
style="@style/Widget.AppCompat.ProgressBar.Horizontal"
/>//进行进度条的风格的设置
<ProgressBar
android:id="@+id/pb4"
android:layout_width="match_parent"
android:layout_height="20dp"
android:layout_marginTop="10dp"
style="@android:style/Widget.ProgressBar.Horizontal"
android:max="100" //进度条的最大长度
android:progress="10" //进度条的选择长度
android:secondaryProgress="30"//进度条的第二选择长度/>
需要设置style来换成进度条的风格来进行操作。效果如下:
2.进度条的控制函数
举例设置一个button来操作进度条,来进行进度条的进度显示。
bt1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
handler.sendEmptyMessage(0);
}
});
Handler handler=new Handler(){
public void handleMessage(Message msg){
super.handleMessage((msg));
if (pb3.getProgress()<100){
handler.postDelayed(runnable,500);
}else {
ToastUtil.showMessage(ProgressActivity.this,"加载完成");
}
}
};
Runnable runnable=new Runnable() {
@Override
public void run() {
pb3.setProgress(pb3.getProgress()+5);
handler.sendEmptyMessage(0);
}
};