簡體   English   中英

iPhone日歷EKEvent

[英]iPhone calendar EKEvent

我目前正在嘗試創建iPhone日歷應用。 為了確保它與現有的iPhone日歷同步,我正在使用EKEvent工具包。

但是,我將要存儲的事件將具有比EKEvent允許的事件更多的屬性,例如,我的事件將不僅具有標題,詳細信息和其他允許的少數類別。 他們還將有主題,優先事項...

因此,每次我的日歷啟動時加載EKEventStore時,此信息將不會包含在加載的EKEvents中。

如何將這些信息與現有的EKEvents相關聯,以便每當加載日歷時,這些附加屬性也會被加載?

我將使用eventIdentifier但iPhone文檔說:“如果事件的日歷發生更改,則其標識符很可能也會更改。” 如果我正確地閱讀了此內容,則意味着我無法始終使用eventIdentifier來標識事件。

我將使用notes屬性並設置一個字符串,以便以后解析。 由於EKCalendarItem是EKEvent的超類的一些屬性EKEvent從繼承EKCalendarItem 此處的文檔

但是,即使注釋不再是EKEvent的屬性,您仍然可以在EKEvent上“設置”注釋。 (去搞清楚)

因此,從您的問題出發,我可能會為每個其他(自定義)屬性設置一個整數,如下所示。

在創建事件的視圖控制器代碼中:-為每個自定義選項設置一個整數。 (優先級,主題等)

int優先級= 0;

    EKEvent *newEvent = [EKEvent eventWithEventStore:yourEventStore];

    [newEvent setCalendar:yourCalendar];

    if (priority == 0) {
        newEvent.notes = @"0"
    }

    newEvent.title = @"YourTitle";
    newEvent.startDate = yourStartDate;
    newEvent.endDate = yourEndDate;

    [youreventStore saveEvent:newEvent span:EKSpanThisEvent commit:YES error:nil];

然后,如果您要檢查/轉換自定義屬性,則只要在每次使用characterAtIndex提取事件的注釋或從注釋中創建subString並將其與另一個字符串進行比較時,就檢查事件的注釋。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM