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 ++ –