0

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 を使用しています

ありがとう。

4

1 に答える 1

1

まず、ボタンをクリックしてもフィードバックは得られません。フィードバックを提供するためのコードは含まれていません。あなたがしたことは、特定の時間にアラームを設定したことだけです。

第二に、getBaseContext()特定の理由がない限り使用しないでください。ここではそのような理由はありません。を使用しthisます。

3 番目に、 of<intent-filter>を持つアクティビティがない限り、警告またはエラーが LogCat にダンプされる以外は、アラーム時刻が来ても何も起こりません。<action>my.todo.list.ShowNotification

于 2012-04-28T00:09:50.887 に答える