2016-11-29 7 views
0

Ich baue eine App, die einen Timer verwendet. Ich habe einen einfachen Timer mit einer Start-und Stop-Taste. Es funktioniert, aber ich möchte die Sekunden auf 60 zurücksetzen. Derzeit geht es weiter 61, 62, 63 usw. Kann ich Hilfe dabei bekommen? Unten sind meine Startmethode, Stoppmethode und die Runnable, die meinen Timer hat.Benötigen android Timer-Sekunden auf 60 zurückgesetzt

private long startTime = 0; 
private long timeInMilliSeconds = 0; 
private long updatedTime = 0; 
private long timeSwapBuff = 0; 

start.setOnClickListener(new View.OnClickListener(){ 
      @Override 
      public void onClick(View v) { 
       startTime = SystemClock.uptimeMillis(); 
       customHandler.postDelayed(updateTimerThread, 0); 
      } 
     }); 

stop.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View v) { 
       timeSwapBuff += timeInMilliSeconds; 
       customHandler.removeCallbacks(updateTimerThread); 
      } 
     }); 

private Runnable updateTimerThread = new Runnable() { 
     @Override 
     public void run() { 
      timeInMilliSeconds = SystemClock.uptimeMillis() - startTime; 

      updatedTime = timeSwapBuff + timeInMilliSeconds; 

      int secs = (int) (updatedTime/1000); 
      int mins = secs/60; 
      int milliseconds = (int) (updatedTime % 1000); 

      timer.setText("" + mins + ":" + String.format("%02d", secs) + 
      ":" + String.format("%02d", milliseconds)); 
      customHandler.postDelayed(this, 0); 
     } 
    }; 

Antwort

1

Statt den tatsächlichen Timerwert des Druckens haben Erwägen Sie time%60 wie diese

int timeEllapsed = ... // the actual time spent for eg lets say 98 
int timeToBePrinted = timeEllapsed%60 // the time you are going to show (38 seconds) 
+0

perfekten Druck. Habe String.format ("% 02d", Sek.) In String.format ("% 02d", Sek.% 60) geändert und es funktioniert wie erwartet. Vielen Dank. – Kalkrin

+0

Ich würde es lieben wenn du meine Antwort akzeptierst :) – Rahel

+0

Denke daran, leider muss ich ein paar Minuten warten. : p – Kalkrin

Verwandte Themen