好了,伙计们,这是我的问题。
我会使用CoreData +源列表+ NSTreeController来创建类似于查找器的源列表的东西(如果你愿意,也可以使用iTunes )。
我的问题是,我的源代码列表中的内容并不完全来自CoreData。例如,我有一个名为“来自核心数据的数据”的节(根),它是使用CoreData填充的,但我也有一些“假”节(即:“收藏夹”部分)。
出于这个原因,我认为使用实体将OutlineView和NSTreeController直接绑定到CoreData是不可行的,我必须使用一些中间的东西,比如NSMutableArray,一开始我使用来自CoreData的数据填充,并使用成员的即席类填充“伪”部分(就像苹果的"SourceView“示例)。这是第一个问题:(1)我这样做对吗?
我的第二个问题是关于这个NSMutableArray的。假设使用这个数组可能是一种解决方案,我想知道哪种方法才是正确的数组填充方式。在示例"SourceView“中,中间数组是在运行时使用NSTreeController (insertObject:)填充的,但我考虑的另一个解决方案是继承NSMutableArray并直接更改数组的内容。(2)我是否以这种方式破坏了MVC?
发布于 2013-02-10 19:08:17
混合持久节点和仅在运行时存在的临时节点的一种方法是在persistentStoreCoordinator中添加一个NSInMemoryStoreType存储。这里有一个关于如何做到这一点的教程:http://simplyhacking.com/source-list-with-core-data.html
https://stackoverflow.com/questions/8541689
复制相似问题