0
String hms = String.format("%02d:%02d",
                    TimeUnit.MILLISECONDS.toMinutes(millisUntilFinished) - TimeUnit.HOURS.toMinutes(TimeUnit.MILLISECONDS.toHours(millisUntilFinished)),
                    TimeUnit.MILLISECONDS.toSeconds(millisUntilFinished) - TimeUnit.MINUTES.toSeconds(TimeUnit.MILLISECONDS.toMinutes(millisUntilFinished)));

私は真剣に取得しません

1) 分 - 時間の仕組みTimeUnit.MILLISECONDS.toMinutes(millisUntilFinished) - TimeUnit.HOURS.toMinutes(TimeUnit.MILLISECONDS.toHours(millisUntilFinished))

2) 常に00:01で終わるのはなぜですか?

onTick()3) getのメソッドはどのようCountDowntimerに呼び出されますか?

4

1 に答える 1

1

1) 分 - 時間の働き TimeUnit.MILLISECONDS.toMinutes(millisUntilFinished) - TimeUnit.HOURS.toMinutes(TimeUnit.MILLISECONDS.toHours(millisUntilFinished))

  • なぜあなたがこれをしたのか分かりません。あなたはただ書くことができます

    文字列 hms = String.format("%02d:%02d", TimeUnit.MILLISECONDS.toMinutes(millisUntilFinished), TimeUnit.MILLISECONDS.toSeconds(millisUntilFinished) - TimeUnit.MINUTES.toSeconds(TimeUnit.MILLISECONDS.toMinutes(millisUntilFinished)));

2) なぜいつも 00:01 で終わるのですか?

はい、あなたは正しいです!カウントダウンタイマーでは、最後の呼び出しは onTick() メソッドをトリガーせず、以下のメソッドを呼び出します。

 public void onFinish() {
    mTextField.setText("00:00");
}

したがって、上記のスニペットに示されている onFinish() メソッドで「00:00」を設定できます。

3) CountDowntimer の onTick() メソッドはどのように呼び出されますか?

-onTick() CountDowntimer コンストラクターに提供される定期的な間隔で発生するコールバック。

于 2016-11-21T09:17:48.023 に答える