0
我已经成功设置了闹钟应用程序,但当有多个闹钟时出现问题。它会覆盖之前选择的警报。设置多个闹钟
我应该对待接目标语句附近的MainActivity.java
文件做什么修改?
我在网上搜索,他们说使用for循环递增挂起的intent id,但它不起作用。
任何帮助将是伟大的。这里是我的code.`
public void add() {
button_add.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.HOUR_OF_DAY, timepicker.getCurrentHour());
calendar.set(Calendar.MINUTE, timepicker.getCurrentMinute());
Intent intent = new Intent(MainActivity.this, AlarmReceiver.class);
**PendingIntent pendingIntent = PendingIntent.getBroadcast(MainActivity.this, 1, intent, PendingIntent.FLAG_UPDATE_CURRENT);**
AlarmManager am = (AlarmManager) getSystemService(ALARM_SERVICE);
am.set(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(), pendingIntent);
Toast.makeText(MainActivity.this, "the alarm is set for " + timepicker.getCurrentHour() + " : " + timepicker.getCurrentMinute(), Toast.LENGTH_SHORT).show();
myDb.insertRow(timepicker.getCurrentHour().toString(), timepicker.getCurrentMinute().toString());
}
});
}
我存储在ListView报警。你可以为我编辑代码吗?所以我会初始化一个变量并增加它并将其设置为唯一的ID?自昨天以来,我一直在努力挣扎。 –
是的增量可以正常工作,或者你可以在1-58 PM在7月8日使用hhmmddmmyy int格式,如1358080714,所以它可以避免重复的警报,但是如果你不需要任何高级别的准确性,那么只需要增量: ) – Neo
它不起作用。我初始化一个uniqueid变量= 1,* PendingIntent pendingIntent = PendingIntent.getBroadcast(MainActivity.this,uniqueid,intent,PendingIntent.FLAG_UPDATE_CURRENT);然后uniqueid ++ –