2011-08-31 58 views
0

我正在開發將事件寫入到用戶的手機上的日曆應用程序。我正在考慮在我的應用程序的事件之前添加一個像myapp這樣的前綴:這樣我就可以在事件存儲中查找我的事件以顯示在桌面視圖中。EventKit謂詞的選擇

但是,當我查看ios eventkit framework時,似乎唯一可用的謂詞基於開始日期和結束日期( - predicateForEventsWithStartDate:endDate:日曆:)。我讀的是對的嗎?

我應該再建立在手機上的只是我的應用程序日曆或有另一種方式來識別日期旁邊我的事件?

在此先感謝。其他

回答

0

一種選擇是有本地存儲(sqlite的,coredata等),其索引到事件。每個事件都有作爲事件ID,您可以通過eventWithIdentifier從商店中檢索事件。

不知道你的數據訪問模式是什麼,但也可以讓你快速存儲你的應用程序中的數據,你可以effieciently查詢(具有強大的謂詞和SQL語法)。您的本地結果可能只是返回eventIds,並在表視圖回調中獲得該行的id並從事件存儲中檢索。

只是另一種選擇...

+0

嘿,這是一個好主意,我不知道我可以做到這一點。爲了確保我明白,當我創建一個事件時,我還捕獲事件ID,然後將其存儲在實體中的核心數據存儲中。然後,根據我從我的核心數據實體中獲取的這些事件ID,從事件存儲庫中拉出? – Jazzmine

+0

這是基本的想法。在該方案中,您必須決定誰是數據的主人,並擔心不同步的數據。我會建議查詢返回id,然後從事件存儲中獲取顯示的數據。你也可以有一個回退策略,甚至可以選擇檢測它丟失並推回到事件存儲區(抱歉,不知道你的應用很多)。如果是這樣的話,您還可以將數據存儲在允許查詢豐富的數據庫中,但是您更願意顯示事件存儲中的數據。多一點工作,但更強大。你也可以重新填充日曆等... – bryanmac

+0

非常感謝,這是一種創新的方法。 – Jazzmine