Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/templates/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Android倒数计时器故障_Java_Android_Countdowntimer - Fatal编程技术网

Java Android倒数计时器故障

Java Android倒数计时器故障,java,android,countdowntimer,Java,Android,Countdowntimer,我希望我的应用程序在更改按钮文本之前等待片刻。我尝试了不同的方法(wait()、Thread.sleep),但因为我希望等待时间是可变的,所以我决定使用倒计时。请参阅下面的代码: 出于某种原因,这不起作用,程序根本不等待。有人能帮我吗?我没有用任何东西填充倒计时,因为我认为它应该只等待几秒钟。线程也是可变的: try { Thread.sleep(1000); } catch (Exception e) { } 试试这个代码 @Override public void onClick(V

我希望我的应用程序在更改按钮文本之前等待片刻。我尝试了不同的方法(wait()、Thread.sleep),但因为我希望等待时间是可变的,所以我决定使用倒计时。请参阅下面的代码:


出于某种原因,这不起作用,程序根本不等待。有人能帮我吗?我没有用任何东西填充倒计时,因为我认为它应该只等待几秒钟。

线程也是可变的:

try {
 Thread.sleep(1000);
 } catch (Exception e) {
 }
试试这个代码

@Override
public void onClick(View view) {
if(i==0) {
        YourActivity.this.runOnUiThread(new Runnable() {



@Override               

public void run() {
txtView.setText("please wait...");
}
});

while(counter < 1000) {
try {
    Thread.sleep(100);
}catch(InterruptedException e) {
    e.printStackTrace();
}
counter +=100;
}

txtView.setText("press");


i++;


}

}

我使用了Thread.sleep,它会等待,但按钮上的文本不会更改。。。如何正确显示代码?>public void onClick(View buttonClicked){button.setText(“Wait”);if(i==0){waitingTime=(long)(Math.random()*1000+3000);try{Thread.sleep(waitingTime);}catch(Exception e){}time1=System.currentTimeMillis();button.setText(“Press”);i++;YourActivity.this.runnuithread(new Runnable()){@Override public void run(){button.setText(“Wait”);}};尝试此操作,而不仅仅是button.setText(“Wait”);查看
@Override
public void onClick(View view) {
if(i==0) {
        YourActivity.this.runOnUiThread(new Runnable() {



@Override               

public void run() {
txtView.setText("please wait...");
}
});

while(counter < 1000) {
try {
    Thread.sleep(100);
}catch(InterruptedException e) {
    e.printStackTrace();
}
counter +=100;
}

txtView.setText("press");


i++;


}

}
        @Override
        public void onClick(View view) {
            btn.setText("wait");
            mHandler.postDelayed(new Runnable() {

                @Override
                public void run() {
                    btn.setText("press");
                }
            }, 1500);
        }
    });