Android:CountDownTimerでカウントダウン機能を実現
1702 ワード
Android:CountDownTimerでカウントダウンを実現
ラベル(スペース区切り):Android,CountDown,CountDownTimer
Step00. 公式
CountDownTimer:カウントダウンは一定間隔で実行され、カウントダウン実行中に具体的な通知が得られます.公式ドキュメント:https://developer.android.com/reference/android/os/CountDownTimer.html日语原文:http://www.cnblogs.com/over140/archive/2011/12/20/2294220.html
Step01.シンプルな使用
使用:30秒のカウントダウンを設定し、textviewに具体的な残り時間を表示します.実行が終了すると.「完了」が表示されます.
実行:countDownTimer.start(); キャンセル:cancel(); キャンセルが実行されると、再起動(start)がカウントダウンを再開します.前回キャンセルしたときの残り時間ではありません.
Step02. 一時停止(Pause)
まず初期化を書き換える必要があります
一時停止または再生を続行
step03.ソースコード
Github Code
ラベル(スペース区切り):Android,CountDown,CountDownTimer
Step00. 公式
CountDownTimer:カウントダウンは一定間隔で実行され、カウントダウン実行中に具体的な通知が得られます.公式ドキュメント:https://developer.android.com/reference/android/os/CountDownTimer.html日语原文:http://www.cnblogs.com/over140/archive/2011/12/20/2294220.html
Step01.シンプルな使用
使用:30秒のカウントダウンを設定し、textviewに具体的な残り時間を表示します.実行が終了すると.「完了」が表示されます.
CountDownTimer countDownTimer = new CountDownTimer(30*1000, 1000) {
public void onTick(long millisUntilFinished) {
mTextField.setText(" : " + millisUntilFinished / 1000 + " ");
}
public void onFinish() {
mTextField.setText(" !");
}
}
実行:countDownTimer.start(); キャンセル:cancel(); キャンセルが実行されると、再起動(start)がカウントダウンを再開します.前回キャンセルしたときの残り時間ではありません.
Step02. 一時停止(Pause)
まず初期化を書き換える必要があります
//millisInFuture
public void initCountDownTimer(long millisInFuture) {
mCountDownTimer = new CountDownTimer(millisInFuture, 1000) {
@Override
public void onTick(long millisUntilFinished) {
curTime = millisUntilFinished;// ;
mTimerTv.setText(TimeTools.getCountTimeByLong(millisUntilFinished));
}
public void onFinish() {
mTimerTv.setText(" !");
}
};
}
一時停止または再生を続行
//isPause , false.
if (!isPause) {
isPause = true;
mCountDownTimer.cancel();
} else {//
if (curTime != 0) {
//
initCountDownTimer(curTime);
mCountDownTimer.start();
isPause = false;
}
}
step03.ソースコード
Github Code