当前位置: 首页 > 面试题库 >

删除日历条目

柯宜年
2023-03-14
问题内容

我编写了用于删除android日历中所有条目的简单代码,但并未删除任何内容。

源代码:

public void DeleteEvent(View view){

            int iNumRowsDeleted = 0;
            Uri eventsUri = Uri.parse("content://com.android.calendar/events");
            Cursor cur = getContentResolver().query(eventsUri, null, null, null, null);

            while (cur.moveToNext()){

                long id = cur.getLong(cur.getColumnIndex("_id"));
                Log.d(TAG, "ID: " + id);
                Uri eventUri = ContentUris.withAppendedId(eventsUri, id);
                iNumRowsDeleted = getContentResolver().delete(eventUri, null, null);
            }
        }

问题答案:
private void deleteEvent(ContentResolver resolver, Uri eventsUri, int calendarId) {
    Cursor cursor;
    if (android.os.Build.VERSION.SDK_INT <= 7) { //up-to Android 2.1 
        cursor = resolver.query(eventsUri, new String[]{ "_id" }, "Calendars._id=" + calendarId, null, null);
    } else { //8 is Android 2.2 (Froyo) (http://developer.android.com/reference/android/os/Build.VERSION_CODES.html)
        cursor = resolver.query(eventsUri, new String[]{ "_id" }, "calendar_id=" + calendarId, null, null);
    }
    while(cursor.moveToNext()) {
        long eventId = cursor.getLong(cursor.getColumnIndex("_id"));
        resolver.delete(ContentUris.withAppendedId(eventsUri, eventId), null, null);
    }
    cursor.close();
}

我这样称呼它:

Uri eventsUri;
int osVersion = android.os.Build.VERSION.SDK_INT;
if (osVersion <= 7) { //up-to Android 2.1 
    eventsUri = Uri.parse("content://calendar/events");
} else { //8 is Android 2.2 (Froyo) (http://developer.android.com/reference/android/os/Build.VERSION_CODES.html)
    eventsUri = Uri.parse("content://com.android.calendar/events");
}
ContentResolver resolver = this.getContentResolver();
deleteEvent(resolver, eventsUri, calendarId);


 类似资料:
  • 问题内容: 我想做的只是删除我在日历中保存的内容,而不是删除日历中已经存在的所有内容。为此,我使用以下代码。但是它将删除日历的所有内容。那么谁能告诉我如何预防呢? 因此,我要删除的仅是我输入的条目。 删除活动 问题答案: 从日历中读取数据后,只需尝试一下即可。 向日历添加单次事件 要将条目添加到特定日历,我们需要配置一个日历条目以使用ContentValues进行插入,如下所示: 每个事件都需要绑

  • 问题内容: 我知道您可以定义overflow:hidden; 在HTML主体上删除滚动条,但我仍然希望能够使用鼠标上的箭头或滚轮滚动。 在此先感谢您的帮助。 编辑:感谢您对悬停滚动条和自定义栏上的所有建议。另外,感谢您担心通过删除滚动条来影响用户体验。我会详细说明,以便您解释我的来历。 我有一个圆形页面(如果您使用滚轮或箭头按钮滚动,当到达底部时,它将重置为页面顶部并重新开始)。永无止境的循环。滚

  • 问题内容: 我想从下表中删除多个重复的键: 希望它像 我正在使用mysql。这是可能的吗?我不能使用 查询来进行唯一的输入,因为我希望将这些重复的输入输入到表中。 问题答案: 一种方法是使用将表联接到子查询上。子查询得到最低为每。当记录在子查询上不匹配时,仅表示它没有匹配的记录并且可以安全地删除。 SQLFiddle演示 但是,如果的记录可以具有不同的名称,则您需要在子句中包括它们,否则将仅保留最

  • 问题内容: 我必须向现有表添加唯一约束。很好,除了表已经有数百万行,而且许多行违反了我需要添加的唯一约束。 删除有问题的行的最快方法是什么?我有一条SQL语句,该语句查找重复项并将其删除,但要花很长时间才能运行。有没有其他方法可以解决此问题?也许备份表,然后在添加约束后还原表? 问题答案: 其中一些方法似乎有些复杂,我通常这样做是: 给定table table,要在()上对其进行唯一化,使行保持为

  • 我已经通过outlook中的graph API创建了定期日历事件,但是,我无法找到任何方法通过graph API删除定期事件的特定实例。我查阅了所有的graph API文档https://docs.microsoft.com/en-us/graph/api/event-delete?view=graph-rest-1.0 让我知道是否真的可以更新/删除特定的定期事件实例以及如何更新/删除。 谢谢

  • 本文向大家介绍Linux使用shell脚本定时删除历史日志文件,包括了Linux使用shell脚本定时删除历史日志文件的使用技巧和注意事项,需要的朋友参考一下 1、tools目录文件结构 2、删除历史文件脚本 del_history_files 3、删除历史文件脚本的配置文件 del_history_files.cfg 4、crontab 执行即可 以上就是本文的全部内容,希望对大家的学习有所帮助