如何从 android 中的事件中删除提醒?
How to remove reminder from event in android?
当我为事件设置提醒时无法删除它!
我已经测试过这段代码:
Uri reminderUri = ContentUris.withAppendedId(CalendarContract.Reminders.CONTENT_URI, reminder.id);
context.getContentResolver().update(reminderUri, getEmptyReminderContentValues(reminder), null, null);
context.getContentResolver().delete(reminderUri, null, null);
我看到一些日历包括 google 日历,但其中一些没有。
谁能帮帮我?
您可以使用以下方法删除事件上设置的提醒
public static void deleteReminderOnEvent(Long reminderId) {
Uri reminderUri = ContentUris.withAppendedId(CalendarContract.Reminders.CONTENT_URI, reminderId);
int rows = contentResolver.delete(reminderUri, null, null);
}
您需要在上述方法之前使用以下方法获取事件的reminderId,然后将其传递给上述方法。
private static Long checkIfReminderExist(ContentResolver contentResolver, long eventId) {
Long reminderId = null;
String[] projection = new String[]{
CalendarContract.Reminders._ID,
CalendarContract.Reminders.METHOD,
CalendarContract.Reminders.MINUTES
};
Cursor cursor = CalendarContract.Reminders.query(contentResolver, eventId, projection);
while (cursor != null && cursor.moveToNext()) {
reminderId = cursor.getLong(0);
}
cursor.close();
return reminderId;
}
当我为事件设置提醒时无法删除它! 我已经测试过这段代码:
Uri reminderUri = ContentUris.withAppendedId(CalendarContract.Reminders.CONTENT_URI, reminder.id);
context.getContentResolver().update(reminderUri, getEmptyReminderContentValues(reminder), null, null);
context.getContentResolver().delete(reminderUri, null, null);
我看到一些日历包括 google 日历,但其中一些没有。 谁能帮帮我?
您可以使用以下方法删除事件上设置的提醒
public static void deleteReminderOnEvent(Long reminderId) {
Uri reminderUri = ContentUris.withAppendedId(CalendarContract.Reminders.CONTENT_URI, reminderId);
int rows = contentResolver.delete(reminderUri, null, null);
}
您需要在上述方法之前使用以下方法获取事件的reminderId,然后将其传递给上述方法。
private static Long checkIfReminderExist(ContentResolver contentResolver, long eventId) {
Long reminderId = null;
String[] projection = new String[]{
CalendarContract.Reminders._ID,
CalendarContract.Reminders.METHOD,
CalendarContract.Reminders.MINUTES
};
Cursor cursor = CalendarContract.Reminders.query(contentResolver, eventId, projection);
while (cursor != null && cursor.moveToNext()) {
reminderId = cursor.getLong(0);
}
cursor.close();
return reminderId;
}