4

時計の分が変わるまで投稿を遅らせたい。現在私はこれを使用しています

handler.postDelayed(drawRunner, 60000);

しかし、この遅延は現在の時刻から60秒後になります。私がやりたいのは、時計の分が変わるまで投稿を遅らせることです。

たとえば、私の電話4:15:29の時間は、その時間まで遅らせたいよりも4:16:00、次の時間までと言うことができます4:17:00

とにかくこれを行うことはありますか?

4

2 に答える 2

5

次の方法で現在の時刻にアクセスできます。

long time = System.currentTimeMillis();

それができたら、次の方法でその2番目の部分を取得できます。

int seconds = new Date(time).getSeconds();

次に、それを60から差し引いて、スリープ時間を取得できます。

int sleepSecs = 60 - seconds;

次に、それをスリープ時間に設定しますhandler.postDelayed()

handler.postDelayed(drawRunner, sleepSecs*1000);

これを初めて使用した後は、一定の60000ミリ秒のスリープ時間を使用できます。

getSeconds()は2番目の値として60または61を返す可能性があることに注意してください!ドキュメンテーション

于 2012-08-29T09:09:40.737 に答える
0

はい、この Timer クラスを使用して定期的なタスクをスケジュールすることができます。このようにして、必要に応じて任意の期間にクロック時間を変更できます。

于 2012-08-29T08:10:23.787 に答える