如何将SystemClock.elapsedRealTime()
转换为可在文本视图中显示的人类可读CharSeq?
答案 0 :(得分:2)
请参阅以下问题:How to format an elapsed time interval in hh:mm:ss.SSS format in Java?。使用这种方法:
private static String formatInterval(final long millis) {
final long hr = TimeUnit.MILLISECONDS.toHours(millis);
final long min = TimeUnit.MILLISECONDS.toMinutes(millis - TimeUnit.HOURS.toMillis(hr));
final long sec = TimeUnit.MILLISECONDS.toSeconds(millis - TimeUnit.HOURS.toMillis(hr) - TimeUnit.MINUTES.toMillis(min));
final long ms = TimeUnit.MILLISECONDS.toMillis(millis - TimeUnit.HOURS.toMillis(hr) - TimeUnit.MINUTES.toMillis(min) - TimeUnit.SECONDS.toMillis(sec));
return String.format("%02d:%02d:%02d.%03d", hr, min, sec, ms);
}
然后假设您有对TextView的引用:
long elapsedTime = SystemClock.elapsedRealTime();
textView.setText(elapsedTime);
结果是,TextView将以人类可读的格式显示设备已启动的总时间。