2012-04-27 14 views
0

Calendarクラスを使用して現在の日付と時刻を取得しています。次に、アラームの日時を設定し、情報がAlarmManagerオブジェクトに渡されます。私はボタンを "設定アラーム"をクリックする必要がありますアラームを設定する必要があります、どういうわけかボタンをクリックしてもフィードバックを与えません。CalendarクラスとAlarmManagerを使用してアラームを設定できません

  Button btnOpen = (Button) findViewById(R.id.btnSetAlarm); 
      btnOpen.setOnClickListener(new View.OnClickListener() { 

      public void onClick(View v) {     
      timePicker = (TimePicker) findViewById(R.id.timePicker); 
      datePicker = (DatePicker) findViewById(R.id.datePicker);     

      AlarmManager alarmManager = (AlarmManager) getSystemService(ALARM_SERVICE);     


      Calendar calendar = Calendar.getInstance();  

      calendar.set(Calendar.YEAR, datePicker.getYear()); 
      calendar.set(Calendar.MONTH, datePicker.getMonth()); 
      calendar.set(Calendar.DAY_OF_MONTH, datePicker.getDayOfMonth());     
      calendar.set(Calendar.HOUR_OF_DAY, timePicker.getCurrentHour()); 
      calendar.set(Calendar.MINUTE, timePicker.getCurrentMinute()); 
      calendar.set(Calendar.SECOND, 0); 


     PendingIntent displayIntent = PendingIntent.getActivity(
      getBaseContext(), 0, 
      new Intent("my.todo.list.ShowNotification"), 0);    

     alarmManager.set(AlarmManager.RTC_WAKEUP, 
      calendar.getTimeInMillis(), displayIntent); 
     } 
     }); 
     } 

私はAndroidのバージョン4.0.1

感謝を使用しています。

答えて

1

まず、ボタンをクリックしてもフィードバックは得られません。あなたにはフィードバックを与えるためのコードは含まれていませんでした。あなたがしたことは、ある特定の時間に警報を発しました。

第2に、具体的な理由がない限り、getBaseContext()を使用しないでください。このような理由はありません。 thisを使用してください。あなたがmy.todo.list.ShowNotification<action>を持って<intent-filter>で活性を有していない限り、アラーム時刻が警告またはエラー以外はLogCatに投棄され、来るとき

第三に、何も起こりません。

+0

ありがとうございます、私はを持っています。アラーム時間に達すると通知を出します。私は、以前の活動に戻るためのコードを追加アラームを設定した後に追加します。再度、感謝します。 –

関連する問題