teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

中断可能なCountDownTimer

2020/03/16 13:54

投稿

quadii.shii
quadii.shii

スコア257

answer CHANGED
@@ -77,4 +77,16 @@
77
77
  ```
78
78
 
79
79
  このやり方で注意が必要なのは、アクティビティライフサイクルを学習していただけばわかりますが、アプリが起動時にもonResumeは呼ばれますので、その時点でtimerのonResumeが呼ばれてもよいような実装になっていなくてはなりません。
80
- 初期化抜けなどがあるとヌルポが出るので注意が必要です。
80
+ 初期化抜けなどがあるとヌルポが出るので注意が必要です。
81
+ # 追記
82
+ コメントいただいた通り、私どもは知らなかったのですがCountDownTimerというのはAndroid標準の抽象クラスなのですね。
83
+
84
+ その場合、ライフサイクルに合わせて中断したり再開したりという機能を追加することは難しいかと思います。
85
+
86
+ 「count down timer suspend」で検索したら
87
+ - https://stackoverflow.com/questions/8306374/android-how-to-pause-and-resume-a-count-down-timer
88
+ - https://gist.github.com/bverc/1492672
89
+ こういうのが出てきたので貼っておきます。
90
+ CountDownTimerをさらに拡張した抽象クラスを作ってくれた人がいるようです。
91
+
92
+ この中のpauseとresumeをオーバライドすれば動きそうですね。