Usman Khan
Usman Khan

Reputation: 3953

How to set the time format on timer on Android?

I am working on Android application in which I want to show the only seconds digits from countdown Android timer. For example only for 10 seconds. My code is given below:

long millis = millisUntilFinished;
String hms = String.format("%02d:%02d", TimeUnit.MILLISECONDS.toHours(millis),
TimeUnit.MILLISECONDS.toMinutes(millis) - TimeUnit.HOURS.toMinutes(TimeUnit.MILLISECONDS.toHours(millis)),
TimeUnit.MILLISECONDS.toSeconds(millis) - TimeUnit.MINUTES.toSeconds(TimeUnit.MILLISECONDS.toMinutes(millis)));

Upvotes: 1

Views: 478

Answers (2)

user3462703
user3462703

Reputation:

Just check the following code, it will 100% help you.

new CountDownTimer(30000, 1000) {//CountDownTimer(edittext1.getText()+edittext2.getText()) also parse it to long

 public void onTick(long millisUntilFinished) {
     mTextField.setText("seconds remaining: " + millisUntilFinished / 1000);
  //here you can have your logic to set text to edittext
 }

 public void onFinish() {
     mTextField.setText("done!");
 }
}
.start();

Upvotes: 0

Tobias
Tobias

Reputation: 7771

long millis = millisUntilFinished;
String secondsOnly = String.format("%02d", millis / 1000);

That's it. If you don't want this to exceed 60, use this:

long millis = millisUntilFinished;
String secondsOnly = String.format("%02d", (millis / 1000) % 60);

Upvotes: 1

Related Questions