我一直在使用
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,2012); //day month year
这将设置未来日期,但不会设置未来的时间(相反,它会将布尔值allDay设置为true),因此默认为00:00.
set(int second,int minute,int hour,int monthDay,int month,int year)
所以试试吧
timerSet.set(0,15,20,2012)
2012年8月20日15:00