2013-02-09 3 views
0

Есть ли способ, с помощью которого с помощью класса андроидного хронометра установить базу хронометра за 15 минут и с этого периода время уменьшается до 0 секунд?Android: Хронометр SetBase в минутах

Я пробовал с setBase(60000), но это не работает.

ответ

0

http://developer.android.com/reference/android/widget/Chronometer.html

Для установки времени базы вы можете использовать elapsedRealtime(), и вы можете формат вывода с SetFormat()

+0

и как это использовать? Я попробовал crono.setBase (SystemClock.elapsedRealtime (60000)); но он не работает – Katherine99

+0

Вы можете посмотреть реализацию, чем сообщение Билла Мота: http://stackoverflow.com/questions/526524/android-get-time-of-chronometer-widget – jackgris

1

В общем хронометр как это работает (если вы хотели бы установить базу к конкретному Н.Р.):

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 
     }; 
    };