Skip to content Skip to sidebar Skip to footer

How Can I Pause The Timer In Android?

I have gone through the link http://dewful.com/?tag=basic-android-timer regarding the timer application in android. It is working fine. I need to add the pause button to stop the t

Solution 1:

publicclassTimerActivityextendsActivity
{
    EditText e1;
    MyCount counter;
    Long s1;
    /** Called when the activity is first created. */@OverridepublicvoidonCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        e1=(EditText)findViewById(R.id.editText1);
        counter= newMyCount(5000,1000);
        counter.start();
    }
    publicvoidasdf(View v)
    {
        switch(v.getId())
        {
            case R.id.button1:         counter.cancel();
            break;
            case R.id.button2:         counter= newMyCount(s1,1000);
            counter.start();
        }
    }
    publicclassMyCountextendsCountDownTimer
    {
        publicMyCount(long millisInFuture, long countDownInterval)
        {
            super(millisInFuture, countDownInterval);
        }
        @OverridepublicvoidonFinish()
        {
            e1.setText("DONE");
        }
        @OverridepublicvoidonTick(long millisUntilFinished)
        {
            s1=millisUntilFinished;
            e1.setText("left:"+millisUntilFinished/1000);
        }
    }
}

Solution 2:

publicvoidtime(long m){
    timer=new CountDownTimer(m, 1000) {

            publicvoidonTick(long millisUntilFinished) {

                tv_timer.setText(formatTime(millisUntilFinished));

            }

            publicvoidonFinish() {
                tv_timer.setText("done!");
            }

         }.start();

 }

i have used this for timer and i have put button for pause and use this

    case R.id.bT_PAUSE:
    String s_time = null;

    try{
    if(Bt_pause.getText().equals("PAUSE")){

    s_time=tv_timer.getText().toString();
    timer.cancel();
    String[] Pause_time=s_time.split(":");
    m=Long.parseLong(Pause_time[0].trim());
    n=Long.parseLong(Pause_time[1].trim());
    m=(m*60)+n;
    m=m*1000;
    Bt_pause.setText("RESUME");

    }elseif(Bt_pause.getText().equals("RESUME")){
        //min_longmillis=Long.parseLong(sss);//min_longmillis=min_longmillis*1000*60;//min_longmillis=m;//timer.start();
        Toast.makeText(this,String.valueOf(m),Toast.LENGTH_SHORT).show();
        time(m);
        Bt_pause.setText("PAUSE");
    }
    }catch(Exception e){
        Toast.makeText(this,e.toString(),Toast.LENGTH_SHORT).show();
    }
    break;

and this for format time

publicStringformatTime(long millis) {  
    String output = "00:00";  
    long seconds = millis / 1000;  
    long minutes = seconds / 60;  

    seconds = seconds % 60;  
    minutes = minutes % 60;  

    String sec = String.valueOf(seconds);  
    String min = String.valueOf(minutes);  

    if (seconds < 10)  
        sec = "0" + seconds;  
    if (minutes < 10)  
        min= "0" + minutes;  

    output = min + " : " + sec;  
    return output;
}//formatTime

Post a Comment for "How Can I Pause The Timer In Android?"