//progressbar进度条示例
public class MainActivity extends Activity {
private static final String tag = "MainActivity";
private ProgressBar pb;
private boolean start;//点击按钮开始标记
private Timer timer;//计时监听
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
pb=(ProgressBar) this.findViewById(R.id.proBar);
pb.setMax(100);//要设置最大进度,100
}
//开始按钮事件
public void start(View view){
if(start){
return;
}
//设置刻度
pb.setProgress(0);//从0位置开始
//每隔一段时间更新 进度
timer=new Timer();//计时器
timer.schedule(new MyTask(), 0, 200);//long类型,每隔200毫秒更新一次
start = true;//启动后赋值为true;防止下一次没运行完时再按
}
//开启一个线程
private class MyTask extends TimerTask{
@Override
public void run() {
//获取进度条上的当前进度
int currentProgress=pb.getProgress();
if(currentProgress==pb.getMax()){//到了进度尽头时,停止
this.cancel();
start=false;
return;
}
currentProgress++;
pb.setProgress(currentProgress);
}
}
}
/布局文件:
<ProgressBar
android:id="@+id/proBar"
style="@android:style/Widget.ProgressBar.Horizontal"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<Button
android:id="@+id/sure"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="start"
android:text="开始" />
转载于:https://my.oschina.net/u/2541146/blog/603599