我已经制作了这行代码:
(DateUtils.getRelativeDateTimeString(getActivity().getApplicationContext(), seconds, DateUtils.SECOND_IN_MILLIS, DateUtils.WEEK_IN_MILLIS, DateUtils.FORMAT_ABBREV_TIME)).toString();
3秒后,它返回:
3 seconds ago
当125秒过去后,它返回:
2 minutes ago
可以更改此代码以返回:
2 minutes and 5 seconds ago
而不是2分钟前?怎么样?
感谢。
答案 0 :(得分:2)
String.format(Locale.getDefault(), " %d min: %d sec ago",
TimeUnit.MILLISECONDS.toMinutes(millis),
TimeUnit.MILLISECONDS.toSeconds(millis) -
TimeUnit.MINUTES.toSeconds(TimeUnit.MILLISECONDS.toMinutes(millis)))
以格式重新计算时间,例如 2 min : 15 sec ago
其中millis
是以毫秒为单位的时间
编辑几天和几小时
int day = (int) TimeUnit.SECONDS.toDays(millis);
long hours = TimeUnit.SECONDS.toHours(millis) - (day * 24);
long minutes = TimeUnit.SECONDS.toMinutes(millis) - (TimeUnit.SECONDS.toHours(millis) * 60);
long seconds = TimeUnit.SECONDS.toSeconds(millis) - (TimeUnit.SECONDS.toMinutes(millis) * 60);
String time = String.valueOf(day) + " Days " + String.valueOf(hours) + " Hours " +
String.valueOf(minutes) + " Minutes " + String.valueOf(seconds) + " Seconds.";
这样你可以得到几天甚至几年......