2012-02-17 58 views
0

嗨,大家好這是我到目前爲止有:我不能得到設定鬧鐘的慾望時間的Android

PendingIntent sender = PendingIntent.getBroadcast(mainactivity, 0, intent, 0); 
      Calendar calendar = Calendar.getInstance(); 
      calendar.setTimeInMillis(System.currentTimeMillis()); 
      calendar.add(Calendar.SECOND, 10); 
      AlarmManager alarmManager = (AlarmManager) getSystemService(ALARM_SERVICE); 
      alarmManager.set(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(), sender); 
      showmsg(); 

報警自帶10秒後我怎樣才能使它在慾望的時間,我想,我有設置一個時間選擇器,所以我怎樣才能做到這一點取決於時間選擇器的時間來響鬧?

Thanx。

+0

我的答案是如何爲你解決的? – koopaking3 2012-02-20 18:33:42

回答

0

隨着你的TimePicker,請致電picker.getCurrentHour()picker.getCurrentMinute()。通過乘以一小時(3600000)或分鐘(60000)的毫秒數,使用這些值來計算一天中給定時間的總毫秒數(例如,中午12:00將等於43200000毫秒)。然後從0:00開始獲取當天日期的毫秒數。這都會是這樣的:

//time of day in ms 
long totalTimePickerMs = (picker.getCurrentHour() * 3600000) + (picker.getCurrentMinute() * 60000); 

//today's date in ms 
Calendar c = Calendar.getInstance(); 
Date d = c.getTime(); 
long today = d.getDay() + d.getMonth() + d.getYear(); 
long total = today + totalTimePickerMs; 

從本質上講,你是在以毫秒爲單位午夜(0:00)獲得今天和增加它的一天的具體時間毫秒。

然後像以前一樣,除了設置報警爲total作爲第二個參數。