Ich möchte die Differenz in Minuten zwischen zwei Daten berechnen, wenn diese Differenz> 0 und < 50 Minuten ist, zeige ich eine Textansicht mit dem nächsten Text: "X bis zur Grenze" (es ist pünktlich, aber ist bis an die Grenze) Nähe Wenn die Differenz < 0 (es ist spät) die Textview sollte „X Minuten zu spät“, sagenZeitunterschied, wenn Benutzer zu spät ist, Tracking
Gerade jetzt für die erste Bedingung alles funktioniert, aber für die zweite, die Zahl zeigt manchmal 740 Minuten zu spät oder größere Zahlen
Date fechaactual = new Date();
long diff = trackingfecha.getTime() - fechaactual.getTime();
long diferenciaminutos = diff/(60 * 1000);
RunneableUpdateUI run = new RunneableUpdateUI();
if(diferenciaminutos < 50) {
if(diferenciaminutos >= 0) {
//Show the minutes close to some specific time
StringBuffer buffer = new StringBuffer();
buffer.append("te quedan ");
String minutes = String.format("%02d", diferenciaminutos);
buffer.append(minutes);
buffer.append(" min");
run.toUpdateValue = buffer.toString();
} else {
//Here is the problem
StringBuffer buffer = new StringBuffer();
String minutes = String.format("%02d", Math.abs(diferenciaminutos));
buffer.append(minutes);
buffer.append(" min tarde");
run.toUpdateValue = buffer.toString();
}
timerHandler.post(run);
}
Warum kann es nicht 740 Minuten zu spät sein? –
Dies geschieht, wenn der Benutzer nur für ein paar Stunden, nicht fast 12 Stunden zu spät kommt –