按钮仅在X秒后可点击

时间:2014-03-04 12:32:22

标签: android button delay countdown

我正在尝试创建一个按钮,该按钮仅在例如3秒后可点击。它应显示倒计时,当达到0时,可以单击按钮并执行操作。 例如,当调用Activity时,按钮首先显示“3”并倒计时为“0”,然后才能点击按钮。

任何想法如何实现这一目标?

2 个答案:

答案 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();