[英]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,然后通過單擊相同的按鈕重新啟動相同的過程。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.