我一直在使用 android 倒计时计时器示例来创建到特定日期的倒计时。
Time TimerSet = new Time();
TimerSet.set(20, 8, 2012); //day month year
TimerSet.normalize(true);
long millis = TimerSet.toMillis(true);
Time TimeNow = new Time();
TimeNow.setToNow(); // set the date to Current Time
TimeNow.normalize(true);
long millis2 = TimeNow.toMillis(true);
long millisset = millis - millis2; //subtract current from future to set the time remaining
final int smillis = (int) (millis); //convert long to integer to display conversion results
final int smillis2 = (int) (millis2);
new CountDownTimer(millisset, 1000) {
public void onTick(long millisUntilFinished) {
// decompose difference into days, hours, minutes and seconds
int weeks = (int) ((millisUntilFinished / 1000) /
604800);
int days = (int) ((millisUntilFinished / 1000) / 86400);
int hours = (int) (((millisUntilFinished / 1000) - (days
* 86400)) / 3600);
int minutes = (int) (((millisUntilFinished / 1000) - ((days
* 86400) + (hours * 3600))) / 60);
int seconds = (int) ((millisUntilFinished / 1000) % 60);
int millicn = (int) (millisUntilFinished / 1000);
w.setText(" " +weeks);
d.setText(" " +days);
h.setText(" " +hours);
m.setText(" " +minutes);
s.setText(" " +seconds);
mTextField.setText(smillis + " " + smillis2 + " " +
millicn + "Time remaining: " +weeks +"weeks " +days + " days " + hours
+ " hours: " + minutes+ " minutes: "
+ seconds + " seconds: " );
}
public void onFinish() {
mTextField.setText("done!");
}
}.start();
我想知道如何设置时间和日期?目前正在倒数到午夜。我希望是 15:00
提前致谢
最佳答案
这是你的问题:
timerSet.set(20, 8, 2012); //day month year
这会设置 future 的日期,但不会设置 future 的一天中的时间(相反,它将 bool 值 allDay
设置为 true),因此它默认为 00:00。
来自android API :
set(int second, int minute, int hour, int monthDay, int month, int year)
那么试试
timerSet.set(0,0,15,20,8,2012)
2012 年 8 月 20 日 15:00。
关于安卓倒计时时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12475873/