我有一個需要迭代並找到/插入到核心數據實體的對象數組。我無法理解如何深入albumParentFolders並查看它們是否存在,如果不將它們添加到實體相冊中。如何導入分層文件夾樣式數據
我知道這是某種遞歸方法,可以深入到albumParentFolders中,但是由於我的AlbumObjects的結構無法找到工作解決方案。
所以,我的對象數組導入都是這樣
NSArray AlbumObjects
---------------------------------------
NSString * albumFolderName
NSString * albumDetailsTitle
NSString * albumDetailsURL
NSArray * albumParentFolders (Array of (NSStrings *) of albumFolderNames used for the level in the tree this album lives in. Can be nil for a root folder)
我需要先搜索核心數據,如果沒有找到插入albumFolderName到核心數據實體,稱爲專輯。然後將自動生成的類用於相冊實體,爲該文件夾插入新的詳細信息對象。例如[newFolder addDetailsObject:newDetails]另外,albumFolderName在覈心數據中並不是唯一的,因爲albumFolderName可以多次列出,但在不同的父文件夾中。
Entity: albums
-------------------------------------
Attribute: folderName
-------------------------------------
Relationship: albumDetails <------>> Entity : details (For adding multiple albumDetailsTitle and albumDetailsURL)
Relationship: parent <<-------
Relationship: subGroups |
^ |
------------
專輯文件夾最終使用NSOutlineView和IB綁定顯示在樹視圖中。這部分已經工作。
如果有人可以建議如何迭代AlbumObjects,特別是鑽入albumParentFolders,以便整個文件夾結構可以存儲在實體中,我將非常感激。
SDK需要支持OSX 10.7+
是'albumParentFolders'完整的路徑? AlbumFolderNames不是唯一的,只有在找不到時才插入? – Willeke
albumParentFolders可能是零或完整路徑,可能看起來像[0] = @「General」[1] = @「2016年7月」[2] = @「保持」albumFolderName將是@「Keep」。 albumFolderName也可以爲零,表明它沒有文件夾,因此是一個根細節項目。 什麼我發現難,未來數組對象可能是像一個類似文件夾[0] = @「新建導入」 [1] = @「2016年七月」 [2] = @「保持」,所以我需要尋找父母父母的父母來驗證它是否存在。我想這是我再次無法理解的遞歸部分。 – GeoffCoope