繁体   English   中英

如何从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);

我看到一些日历包括谷歌日历这样做,但其中一些没有。 任何人都可以帮助我吗?

您可以使用以下方法删除事件上设置的提醒

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM