2013-04-04 13 views
3
public static void insertEventWithName(Context ctx, long id, String eventName, String descriptionEvent, Calendar beginTime) { 

    intent.putExtra(Events.CALENDAR_ID, (int) id); 
    Intent intent = new Intent(Intent.ACTION_INSERT); 
    intent.setData(Events.CONTENT_URI); 
    intent.putExtra(Events.TITLE, eventName); 
    intent.putExtra(Events.DESCRIPTION, descriptionEvent); 
    intent.putExtra(CalendarContract.EXTRA_EVENT_BEGIN_TIME,beginTime.getTimeInMillis()); 
    intent.putExtra(Events.ACCESS_LEVEL, Events.ACCESS_PRIVATE); 
    intent.putExtra(Events.AVAILABILITY, Events.AVAILABILITY_BUSY); 
    ctx.startActivity(intent); 
} 

爲了插入一個事件我使用此代碼,但總是設置最後使用的日曆。 我希望看到帶有我的ID的日曆Android - 如何設置特定的日曆插入事件的意圖

+0

我有同樣的問題。你找到解決方案嗎? – joshi737 2014-03-20 08:34:43

+0

我也有同樣的問題,@ joshi737你找到了解決方案嗎? – 2015-05-05 22:47:12

+0

我面臨同樣的問題,有沒有人找到解決方案? @ joshi737 – 2016-05-31 09:03:42

回答

0

嘗試添加日曆名稱而不是其ID。

intent.putExtra(CalendarContract.Calendars.ACCOUNT_NAME, "[email protected]") 

對我來說,它會在打開所選日曆應用程序時設置特定的日曆。

+0

它也不工作, – 2016-05-31 09:04:16

0

我可以通過調用如下意圖setData調用特定的日曆:

intent.setData(buildCalUri()); 

凡buildCalUri返回URI用於創建特定的日曆

public static Uri buildCalUri() { 
     return CalendarContract.Calendars.CONTENT_URI.buildUpon() 
       .appendQueryParameter(CalendarContract.CALLER_IS_SYNCADAPTER, "true") 
       .appendQueryParameter(CalendarContract.Calendars.ACCOUNT_NAME, ACCOUNT_NAME) 
       .appendQueryParameter(CalendarContract.Calendars.ACCOUNT_TYPE, ACCOUNT_TYPE).build(); 
0
Intent intent = new Intent(Intent.ACTION_EDIT) 
        .setType("vnd.android.cursor.item/event") 
        .setData(CalendarContract.Events.CONTENT_URI) 
        .putExtra(CalendarContract.Calendars.NAME, APPOINTMENT_CALENDAR_NAME) 
        .putExtra(CalendarContract.Calendars.ACCOUNT_NAME, EMAIL) 
       .putExtra(CalendarContract.Calendars.CALENDAR_DISPLAY_NAME, APPOINTMENT_CALENDAR_NAME) 
       .putExtra(CalendarContract.Events.CALENDAR_ID, getCalenderID(EMAIL, APPOINTMENT_CALENDAR_NAME)); 
     startActivity(intent); 

嘗試給予更多參數供它區分。我也面臨同樣的問題,但是當我提供以上細節時,它重定向到更正日曆。希望能幫助到你。

相關問題