В общем хронометр как это работает (если вы хотели бы установить базу к конкретному Н.Р.):
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
};
};
и как это использовать? Я попробовал crono.setBase (SystemClock.elapsedRealtime (60000)); но он не работает – Katherine99
Вы можете посмотреть реализацию, чем сообщение Билла Мота: http://stackoverflow.com/questions/526524/android-get-time-of-chronometer-widget – jackgris