6

好的,我在这里非常准确地阅读了文档:http: //developer.android.com/guide/topics/providers/calendar-provider.html#update-event并写了这样的内容:

// Here is an example of an intent that sets a new title for a specified event and lets users edit the event in the Calendar.

long eventID = 208;
Uri uri = ContentUris.withAppendedId(Events.CONTENT_URI, eventID);
Intent intent = new Intent(Intent.ACTION_EDIT)
    .setData(uri)
    .putExtra(Events.TITLE, "My New Title");
startActivity(intent);

对我来说它不起作用 - 它打开了正确的事件,但无法编辑它 - 所有字段都是只读的。只有我可以更改的字段是时区和提醒。其他所有内容都是只读的。难道我做错了什么?

我的 API 级别是 14 (ICS)

4

3 回答 3

6

因此,我认为您没有做错任何事情-我通过命令行汇总了同一事物的基本实现,并且适用相同的限制:

am start -a android.intent.action.EDIT --es title "New Title" content://com.android.calendar/events/1

我只能编辑与您相同的字段-您最好做 aACTION_VIEW并让用户决定编辑(对不起,我没有更好的答案给您,这有点烦人)

于 2012-10-25T21:31:52.277 回答
3

问题的解决方法:如果您使用 Intent.ACTION_VIEW,您至少会获得一个活动,您可以在其中点击“编辑”按钮,之后您可以编辑标题和位置以及其他所有内容(无论如何在默认日历应用程序中)。

于 2013-10-22T10:16:47.367 回答
0

只有在您是该活动的组织者的情况下,您才能编辑活动,因此在您的情况下,您不是组织者

于 2019-10-21T07:39:17.023 回答