我有一个以毫秒为单位的数据,使用CountDown类我将以这种格式显示时间:Days:Houres:Minutes:Seconds。 如果我做毫秒/ 1000我有总秒 如果我这样做(毫秒/ 1000)/ 60我有总分钟数 等等 但是如何以这种格式显示倒计时:2dayes:21houres:56分钟:00seconds
由于
答案 0 :(得分:1)
我认为您需要使用mod(%)运算符从每个分区中提取余数。
这个怎么样:
final long SEC_PER_DAY = 24 * 60 * 60;
final long SEC_PER_HOUR = 60 * 60;
final long SEC_PER_MIN = 60;
public void onTick(long millis) {
long tot_sec = millis/1000;
long rem_days = tot_sec / SEC_PER_DAY;
long rem_hours = (tot_sec % SEC_PER_DAY) / SEC_PER_HOUR;
long rem_mins = ((tot_sec % SEC_PER_DAY) % SEC_PER_HOUR) / SEC_PER_MIN;
long rem_secs = ((tot_sec % SEC_PER_DAY) % SEC_PER_HOUR) % SEC_PER_MIN;
// and then format as you please...
}
答案 1 :(得分:0)
您应该使用DateFormat或SimpleDateFormat,请参阅http://developer.android.com/reference/java/text/DateFormat.html
首先,您应该将您的毫秒转换为日期。
Date date = new Date();
date.setTime(millis);
然后,您可以使用DateFormat将时间戳格式化为人类可读的字符串。