I have an inner class that extends CountDownTimer. This is basically a simple countdown timer that updates the TextView in action and plays a sound when the timer ends. Code for inner class:
public class SetTimer extends CountDownTimer
{
public SetTimer(long millisInFuture, long countDownInterval)
{
super(millisInFuture, countDownInterval);
}
@Override
public void onFinish()
{
timeLeft.setText("0");
Uri notification = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION);
Ringtone r=RingtoneManager.getRingtone(getApplicationContext(), notification);
r.play();
}
@Override
public void onTick(long millisUntilFinished)
{
String t;
t=String.format("%02d:%02d", TimeUnit.MILLISECONDS.toMinutes(millisUntilFinished), TimeUnit.MILLISECONDS.toSeconds(millisUntilFinished)
-TimeUnit.MINUTES.toSeconds(TimeUnit.MILLISECONDS.toMinutes(millisUntilFinished)));
timeLeft.setText(t);
}
}
The code that creates and references the TextView:
TextView timeLeft;
and in the onCreate method:
timeLeft=(TextView) findViewById(R.id.txtTimeLeft);
, . , TextView. TextView onCreate . , . Log.d, , onTick , . , TextView , , . TextView onTick , , TextView, . , , , SetTimer , . :
timer=new SetTimer(interval, 100);
timer.start();
, SetTimer TextView ?