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);
      }
      }); 
      }

我使用的是安卓版本 4.0.1

谢谢。

4

1 回答 1

1

首先,单击按钮不应该给您任何反馈。您没有包含任何代码来给您任何反馈。您所做的只是在某个特定时间设置警报。

其次,除非您有特定的理由,否则不要使用getBaseContext(),而您在这里没有这样的理由。使用this.

第三,除非您有一个带有 of 的活动,否则<intent-filter><action>警报my.todo.list.ShowNotification时间到来时,除了将警告或错误转储到 LogCat 之外,什么都不会发生。

于 2012-04-28T00:09:50.887 回答