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);
}
};
perfekten Druck. Habe String.format ("% 02d", Sek.) In String.format ("% 02d", Sek.% 60) geändert und es funktioniert wie erwartet. Vielen Dank. – Kalkrin
Ich würde es lieben wenn du meine Antwort akzeptierst :) – Rahel
Denke daran, leider muss ich ein paar Minuten warten. : p – Kalkrin