重置后单击按钮重新启动计时器

Restart Chronometer on Button Click After Resetting

这就是我启动计时器的方式:

btnCount.setEnabled(true);

        if (!mIsStarted) {
            chrono.setBase(SystemClock.elapsedRealtime());
            chrono.start();
            mIsStarted = true;
        }

然后我停止它:

        switch (item.getItemId()) {
            case R.id.item1:
                Toast.makeText(getApplicationContext(),"Count Reset",Toast.LENGTH_LONG).show();
                txtCount.setText(String.valueOf(count = 0));
                chrono.setBase(SystemClock.elapsedRealtime());
            return true;
            default:
                return super.onOptionsItemSelected(item);

我已经尝试了所有我能理解的方法,但是在我按下重置菜单按钮后无法在按钮点击时重新启动计时器,而是停留在 00。我知道这很可能是因为

if (!mIsStarted) {
  ...
        mIsStarted = true;

允许按钮仅与计时器交互一次。有没有办法让按钮在重置后启动计时器?谢谢

因为我设置了boolean mIsStarted= false;最初只允许在通过菜单按钮重置后单击第一个按钮启动计时器布尔值仍然处于活动状态并且不会让我以相同的方式重新启动计时器:

 if (!mIsStarted) {
            chrono.setBase(SystemClock.elapsedRealtime());
            chrono.start();
            mIsStarted = true;}

我添加了 mIsStarted = false;到我的菜单按钮操作和所有按预期工作:

                txtCount.setText(String.valueOf(count = 0));
            chrono.setBase(SystemClock.elapsedRealtime());
            chrono.stop();
            mIsStarted = false;

我通过单击按钮启动计时器,然后通过菜单按钮停止并重置为 00:00,然后通过单击相同的按钮重新启动相同的过程。