我想开发一个倒计时应用程序。为此我在xml文件中有一个textview。我在.java文件中编写了以下代码。
private class santimer extends CountDownTimer {
public santimer(long millisInFuture, long countDownInterval) {
super(millisInFuture, countDownInterval);
// TODO Auto-generated constructor stub
}
void set_text_view()
{
try {
SimpleDateFormat df = new SimpleDateFormat("hh:mm:ss_yyyy.MM.dd");
Date date1 = new java.util.Date();
Date date2 = df.parse("00:00:00_2013.11.24");
long diff = date2.getTime() - date1.getTime();
long day = diff/(1000 * 60 * 60 * 24);
long hours = diff - day * (1000 * 60 * 60 * 24);
diff = diff/(1000 * 60 * 60 * 24);
text.setText("Time remain:"+ day +" day and " + hours+" hours");
Log.e("TEST" , date1.getTime() + " - " + date2.getTime() + " - " + diff);
} catch (ParseException e) {
Log.e("TEST", "Exception", e);
} catch (java.text.ParseException e) {
// TODO Auto-generated catch block
Log.e("TEST", "Exception", e);
}
}
@Override
public void onFinish() {
// TODO Auto-generated method stub
text.setText("Time's up!");
time_eplapsed.setText("Time Elapsed: " + String.valueOf(startTime));
}
@Override
public void onTick(long millisUntilFinished) {
// TODO Auto-generated method stub
text.setText("Time remain:" + millisUntilFinished);
timeElapsed = startTime - millisUntilFinished;
time_eplapsed.setText("Time Elapsed: "
+ String.valueOf(timeElapsed));
set_text_view();
}
}
为此,我有以下输出:
这里的天数是正确的,但是小时数不正确。我无法理解我该怎么办?我想显示天,小时,分钟和秒的数量。请帮我这样做。
答案 0 :(得分:0)
long hours = diff / (1000 * 60 * 60) % 24 ;