Android 创建进度条以设置计时器

Android 创建进度条以设置计时器,android,timer,progress-bar,Android,Timer,Progress Bar,在我的数学测试应用程序中,我想使用进度条为一个问题设置10。这是我的密码: public class Question extends Activity { private boolean enoughTime = true; private ProgressBar progressBar; int progressStatus = 0; private Handler handler = new Handler(); protected void onCreate(Bu

在我的数学测试应用程序中,我想使用进度条为一个问题设置10。这是我的密码:

public class Question extends Activity {
private boolean enoughTime = true;
    private ProgressBar progressBar;
    int progressStatus = 0;
    private Handler handler = new Handler();
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    createQuestionView();
    new Thread(new Runnable() {

            @Override
            public void run() {
                // TODO Auto-generated method stub
                while (progressStatus < 1000){
                    progressStatus += 1;
                    enoughTime = true;
                    handler.post(new Runnable() {

                        @Override
                        public void run() {
                        // TODO Auto-generated method stub
                            progressBar.setProgress(progressStatus);
                        }
                    });
                    try {
                        Thread.sleep(50);
                    } catch (InterruptedException e) {
                        e.printStackTrace();
                    }
                }
                if (progressStatus >= 500){
                    enoughTime = false;
                }
            }
        }).start();
   while (enoughTime){
      DoSomeThing();
   }
   while (!enoughTime){
      DisplaySocre();
   }
公共课堂问题扩展活动{
私有布尔值enoughTime=true;
私人ProgressBar ProgressBar;
int progressStatus=0;
私有处理程序=新处理程序();
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
createQuestionView();
新线程(newrunnable()){
@凌驾
公开募捐{
//TODO自动生成的方法存根
而(进度状态<1000){
progressStatus+=1;
enoughTime=true;
handler.post(新的Runnable(){
@凌驾
公开募捐{
//TODO自动生成的方法存根
progressBar.setProgress(progressStatus);
}
});
试一试{
睡眠(50);
}捕捉(中断异常e){
e、 printStackTrace();
}
}
如果(进度状态>=500){
enoughTime=false;
}
}
}).start();
while(足够的时间){
DoSomeThing();
}
而(!足够时间){
DisplaySocre();
}

它不起作用。我想我的问题是关于while循环,但不知道如何解决。有什么建议吗?非常感谢。

我认为最好使用TimerTask


您能详细介绍一下吗?因为我想有一个进度条,向用户显示他们还剩多少秒。