我正在尝试创建一个按钮,该按钮仅在例如3秒后可点击。它应显示倒计时,当达到0时,可以单击按钮并执行操作。 例如,当调用Activity时,按钮首先显示“3”并倒计时为“0”,然后才能点击按钮。
任何想法如何实现这一目标?
答案 0 :(得分:9)
你应该使用CountDownTimer
:
timer = new CountDownTimer( 3000, 1000 ) {
@Override public void onTick( long millisUntilFinished ) {
button.setText( "count down " + millisUntilFinished );
}
@Override public void onFinish() {
button.setOnClickListener( onClickListener );
}
};
以下某处:
timer.start()
答案 1 :(得分:5)
button.setEnabled(false);
new CountDownTimer(3000, 1000) {
public void onTick(long millisUntilFinished) {
button.setText("Wait for " + (millisUntilFinished / 1000) + " seconds");
}
public void onFinish() {
button.setEnabled(true);
button.setText("Press me!");
}
}.start();