如何在android中创建倒数计时器?

时间:2014-04-10 20:35:50

标签: android timer countdown

我正在开发一个简单的数学应用程序,用于练习加法,减法,乘法等。到目前为止,我创建了,当用户键入答案并按下复选按钮时,如果答案是正确的,吐司将显示"正确回答"别的"错误再试一次"

我想在TextView中加入倒数计时器,显示30秒倒计时。如果用户按下检查按钮,则计时器必须停止/暂停&如果答案是正确答案,敬酒会显示"正确答案"别的错误再次尝试,计时器应该持续到最后一秒,最后一个吐司会显示"时间到了#34;。

1 个答案:

答案 0 :(得分:0)

您将使用Handler类。

使用以下变量

private final int SECOND = 1;
private final int MAX_TIME = 30; // seconds

private Handler mHandler = new Handler();
private int mRemainingTime = MAX_TIME;
private TextView mTimeText;

在你的onCreate里面或者在你想要的时候打电话给下面。

mTimeText = findViewById(R.id.textview);
mHandler.postDelayed(new Runnable() {
    public void run() {
        mRemainingTime --;
        updateViews();

        if(mRemainingTime <= 0) {
            onTimeReachedZero();
        } else {
            mHandler.postDelayed(this, SECOND);
        }
    }
}, SECOND);

然后你定义的方法......

private void updateViews() {
    // update your textview
    mTimeText.setText("" + mRemainingTime);
}

private void onTimeReachedZero() {
    // show your toast and do any other handling
}