Androidクロノメータークラスを使用してクロノメーターのベースを15分に設定し、その期間から時間が0秒まで下がる方法はありますか?
私は試してみましsetBase(60000)
たが、これはうまくいきません。
Androidクロノメータークラスを使用してクロノメーターのベースを15分に設定し、その期間から時間が0秒まで下がる方法はありますか?
私は試してみましsetBase(60000)
たが、これはうまくいきません。
一般に、クロノメーターは次のように機能します (Base を特定の nr に設定したい場合):
mChronometer.setBase(SystemClock.elapsedRealtime() - (nr_of_min * 60000 + nr_of_sec * 1000)))
あなたが求めていることは、カウントダウンを通じて行うことができます(http://developer.android.com/reference/android/os/CountDownTimer.html)
または、このようなクロノメーターを使用して独自のカウントダウンを作成します (これを書いたばかりでまだテストしていないため、さらに作業を行う必要があります)。
private OnChronometerTickListener countUp = new OnChronometerTickListener(){
@Override
public void onChronometerTick(Chronometer chronometer){
long elapsedTime = (SystemClock.elapsedRealtime() - mChronometerCountUp.getBase()) / 60000;
Log.v("counting up", elapsedTime);
// you will see the time counting up
count_down--;
if(count_down == 0){
mChronometerCountUp.stop();
}
// an int which will count down,
// this is not (very) accurate due to the fact that u r using the update part of the chronometer
// u just might implement the countdown i guess
// or 2 chronometers (one counting up and an other counting down using the elapsed time :p)
// just remember programming is creating ur solution to problems u face its like expression urself
};
};
このスレッドAndroid: chronometer as a persistent stopwatch を確認してください。開始時間の設定方法は?クロノメーター「ベース」とは?このスレッドAndroid - Get time of chronometer widgetと同様に。どちらもあなたの質問に直接答えることはありませんが、そこにあるナゲットはあなたを答えに導くはずです.
http://developer.android.com/reference/android/widget/Chronometer.html
基準時間を設定するには、eplapseRealtime() を使用でき、setFormat() でフォーマットを出力できます。