如何通过 android 应用程序编辑日历事件 [英] how to edit the calendar events via android application

查看:16
本文介绍了如何通过 android 应用程序编辑日历事件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何通过 android 应用程序编辑日历中的日历事件..

how can i edit the calendar events in calendar via android application..

任何人都知道如何在日历应用程序中打开议程活动.....

Any one know how to open the Agenda Activity in the calendar application.....

推荐答案

从日历中读取数据后,试试这个..

将单次事件添加到日历中

After reading the data from the Calendar just try this out..

Adding a Single-Occurrence Event to a Calendar

要将条目添加到特定日历,我们需要使用 ContentValues 配置要插入的日历条目,如下所示:

To add an entry to a specific calendar, we need to configure a calendar entry to insert using the ContentValues as follows:

ContentValues event = new ContentValues();

每个事件都需要与特定的日历相关联,因此您首先要设置的就是要将此事件插入到的日历的标识符:

Each event needs to be tied to a specific Calendar, so the first thing you're going to want to set is the identifier of the Calendar to insert this event into:

event.put("calendar_id", calId);

然后我们设置一些关于事件的基本信息,包括事件标题、描述和位置等字符串字段.

We then set some of the basic information about the event, including String fields such as the event title, description and location.

event.put("title", "Event Title");
event.put("description", "Event Desc");
event.put("eventLocation", "Event Location");

有许多不同的选项可用于配置事件的时间和日期.

There are a number of different options for configuring the time and date of an event.

我们可以设置事件的开始和结束信息如下:

We can set the event start and end information as follows:

long startTime = START_TIME_MS;
long endTime = END_TIME_MS;
event.put("dtstart", startTime);
event.put("dtend", endTime);

如果我们要添加生日或假期,我们会将条目设置为全天事件:

If we are adding a birthday or holiday, we would set the entry to be an all day event:

event.put("allDay", 1);   // 0 for false, 1 for true

这些信息对于大多数条目来说已经足够了.但是,还有许多其他有用的日历条目属性.

This information is sufficient for most entries. However, there are a number of other useful calendar entry attributes.

例如,您可以将事件状态设置为暂定 (0)、已确认 (1) 或已取消 (2):

For example, you can set the event status to tentative (0), confirmed (1) or canceled (2):

event.put("eventStatus", 1);

您可以通过将其可见性设置为默认 (0)、机密 (1)、私人 (2) 或公开 (3) 来控制谁可以看到此事件:

You can control who can see this event by setting its visibility to default (0), confidential (1), private (2), or public (3):

event.put("visibility", 0);

您可以通过将事件的透明度设置为不透明 (0) 或透明 (1) 来控制事件是否在日历上消耗时间(可能有日程冲突).

You can control whether an event consumes time (can have schedule conflicts) on the calendar by setting its transparency to opaque (0) or transparent (1).

event.put("transparency", 0);

您可以控制事件是否触发提醒警报,如下所示:

You can control whether an event triggers a reminder alarm as follows:

event.put("hasAlarm", 1); // 0 for false, 1 for true

一旦日历事件配置正确,我们就可以使用 ContentResolver 将新的日历条目插入到日历事件的适当 Uri 中:

Once the calendar event is configured correctly, we're ready to use the ContentResolver to insert the new calendar entry into the appropriate Uri for calendar events:

  Uri eventsUri = Uri.parse("content://calendar/events");
  Uri url = getContentResolver().insert(eventsUri, event);

对 insert() 方法的调用会联系日历内容提供者并尝试将条目插入到适当的用户日历中.如果您导航到日历应用程序并启动它,您应该会在相应的日历中看到您的日历条目.由于日历同步,如果您在网络上使用 Google 日历,您还将在线看到日历条目.

The call to the insert() method contacts the Calendar content provider and attempts to insert the entry into the appropriate user Calendar. If you navigate to the Calendar application and launch it, you should see your calendar entry in the appropriate Calendar. Since the Calendar syncs, you will also see the Calendar entry online, if you're using the Google Calendar on the web.

向日历添加定期事件

您还可以配置定期日历事件.为此,您必须以重复规则的形式向事件添加更多字段.规则规范基于 RFC2445.

You can also configure recurring Calendar events. In order to do so, you must add several more fields to the event in the form of a recurrence rule. The rule specification is based upon RFC2445.

这篇关于如何通过 android 应用程序编辑日历事件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆