【问题标题】:Using an intent to edit calendar event doesn't work使用意图编辑日历事件不起作用
【发布时间】:2012-10-25 15:42:15
【问题描述】:

好的,我在这里非常准确地阅读了文档: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)

【问题讨论】:

  • 您的 API 级别设置为多少?您是否使用 Google API?
  • 我的手机 API 级别为 14(我的应用程序也编码为 14 级),我不明白您问题的第二部分...
  • 当您为项目选择 API 级别时,您将看到每个级别中的两个。 Android 4.0 API 14 && Google API 的 API 14
  • @Asok OP 没有理由安装谷歌 API - 他们只是在广播意图......
  • 您正在尝试编辑现有事件,而不是创建新事件,对吗?这可能只是一个限制......

标签: android events android-calendar


【解决方案1】:

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

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

我只能编辑与您相同的字段 - 您最好使用 ACTION_VIEW 并让用户决定编辑(抱歉,我没有更好的答案,这有点烦人)

【讨论】:

  • 对我来说完全一样...但是为什么文档说别的呢?或者他们忘记提到一些非常重要的事情(就像以前很多次一样):)
  • 2014 年 5 月 21 日。KitKat 中的相同问题
  • 即使在棒棒糖和棉花糖中它仍然存在
【解决方案2】:

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

【讨论】:

    【解决方案3】:

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-05-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多