2011-02-25 90 views
0

我想根據用戶輸入的分鐘列表設置一堆鬧鐘。如果他們在下午4:00點擊開始時鐘按鈕並設置了5分鐘,10分鐘和15分鐘的鬧鐘,則需要設置爲4點05分,4點10分和4點15分的鬧鐘。該代碼我有seeeems權利和吐司派我來我都在列表中的每個項的「設置報警」的消息,但沒有報警我的手機上都會響起:使用AlarmManager設置多個鬧鐘,一切正常,但沒有鬧鐘

setAlarm.setOnClickListener(new View.OnClickListener() { 
      public void onClick(View v) { 
       String[] spAlarms = allAlarms.split(";"); 
       for(int i = 0; i < spAlarms.length; i++) { 
        try { 
         if(!spAlarms.equals("")) { 
          int time = Integer.valueOf(spAlarms[i]); 
          Calendar cal = Calendar.getInstance(); 
          cal.add(Calendar.MINUTE, time); 
          Intent intent = new Intent(Hop_Timer.this, Alarm_Receiver.class); 
          intent.putExtra("alarm_message", "Time for your " + spAlarms[i] + " min addition!"); 
          PendingIntent sender = PendingIntent.getBroadcast(Hop_Timer.this, 192837, intent, PendingIntent.FLAG_UPDATE_CURRENT); 
          AlarmManager am = (AlarmManager) getSystemService(ALARM_SERVICE); 
          am.set(AlarmManager.RTC_WAKEUP, cal.getTimeInMillis(), sender); 
          Toast.makeText(getApplicationContext(), "Set alarm", Toast.LENGTH_SHORT).show(); 
         } 
        } catch (Exception e) { 
         Toast.makeText(getApplicationContext(), e.getMessage(), Toast.LENGTH_SHORT).show(); 
        } 
       } 
      } 
     }); 

回答

-1

使用cal.set(日曆。 MINUTE,時間);而不是添加方法。

1

據我知道你不能在OnClickListener做到這一點,但更好的方法是做到這一點的OnResume()

和帕瑞克的Ekta是正確的,你必須使用cal.set(Calender.MINUTE, time);也可以設置報警

+0

謝謝,但有人降級我的答案。 – AndroGeek 2014-11-24 13:11:01