如何在android中从事件中删除提醒?
当我为某个事件设置提醒时,无法将其删除! 我已经测试了此代码:如何在android中从事件中删除提醒?,android,android-contentresolver,reminders,Android,Android Contentresolver,Reminders,当我为某个事件设置提醒时,无法将其删除! 我已经测试了此代码: Uri reminderUri = ContentUris.withAppendedId(CalendarContract.Reminders.CONTENT_URI, reminder.id); context.getContentResolver().update(reminderUri, getEmptyReminderContentValues(reminder), null, null); context.getConte
Uri reminderUri = ContentUris.withAppendedId(CalendarContract.Reminders.CONTENT_URI, reminder.id);
context.getContentResolver().update(reminderUri, getEmptyReminderContentValues(reminder), null, null);
context.getContentResolver().delete(reminderUri, null, null);
我看到一些日历包括谷歌日历这样做,但其中一些没有。
有人可以帮我吗?您可以使用以下方法删除事件上设置的提醒
public static void deleteReminderOnEvent(Long reminderId) {
Uri reminderUri = ContentUris.withAppendedId(CalendarContract.Reminders.CONTENT_URI, reminderId);
int rows = contentResolver.delete(reminderUri, null, null);
}
您需要在上述方法之前使用以下方法获取事件的提醒ID,然后将其传递给上述方法。
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;
}
您可以使用以下方法删除事件上设置的提醒
public static void deleteReminderOnEvent(Long reminderId) {
Uri reminderUri = ContentUris.withAppendedId(CalendarContract.Reminders.CONTENT_URI, reminderId);
int rows = contentResolver.delete(reminderUri, null, null);
}
您需要在上述方法之前使用以下方法获取事件的提醒ID,然后将其传递给上述方法。
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;
}
让我知道下面的答案是否有帮助:)让我知道下面的答案是否有帮助:)您是否使用CheckIfEmployerExist获取提醒ID?因为同样的代码适用于我。您是否尝试过在分钟内设置空值或0值?@Punit Sharma 1)此代码用于删除单个提醒ID,如果该事件有多个提醒,并且我想删除该事件的所有提醒,该怎么办?2) 这行代码“int rows=contentResolver.delete(rementeruri,null,null);”中的delete函数返回什么?您是否使用checkifrementerexist获取提醒ID?因为这段代码同样适用于我。您是否尝试过在分钟内设置空值或0值?@Punit Sharma 1)此代码用于删除单个提醒ID,如果该事件有多个提醒,并且我想删除该事件的所有提醒,该怎么办?2) delete函数在这行代码“int rows=contentResolver.delete(rementeruri,null,null)”中返回什么