2010-07-15 37 views
0

我想加載一個客戶端對象,然後根據它們是否已經放置來抽取相關的採購訂單,採購訂單具有IsPlaced BOOL屬性。使用添加的謂詞遍歷核心數據對象圖?

所以,我有我的客戶對象,我可以得到所有采購訂單這樣的,這是偉大的工作:

purchaseordersList =[[myclient.purchaseorders allObjects] mutableCopy]; 

但理想的我真的喜歡2陣列的 - 每個訂單類型:IsPlaced = YES和IsPlaced = NO

我該怎麼做?或者我需要做另一次獲取?

回答

0

首先,沒有理由將該集合轉換爲數組,除非將其排序,並且沒有理由將該數組轉換爲可變數組。你從一些示例代碼中得到了這些嗎?如果你想要使用該用於UITableView然後看

NSSet *placed = [[myclient purchaseorders] filteredSetUsingPredicate:[NSPredicate predicateWithFormat:@"isPlaced == YES"]]; 
NSSet *notPlaced = [[myclient purchaseorders] filteredSetUsingPredicate:[NSPredicate predicateWithFormat:@"isPlaced == YES"]]; 

其次,可以過濾很容易地通過一個陣列或一組通過使用謂詞,以便可以創建兩組(或陣列)改爲NSFetchedResultsController。它將爲您節省大量的鍋爐代碼。

你還記得你從那裏得到了什麼樣的代碼嗎?最近很多人都看到了-mutableCopy,並且很樂意取消它。 :)

+0

甜,是的 - 只是從糟糕的示例代碼中學習我猜。那麼我可以通過和NSSet就像和陣列填充UITableView? – Slee 2010-07-15 03:55:01