答案 0 :(得分:9)
如何引用它们以便我可以将可转换为
[String]
这实际上是一个好点,因为answer I linked too假设您正在创建自己的NSManagedObject子类。
值得强调的是,自己创建/维护自己的NSManagedObject子类是一个非常有效的选项,有些人甚至可能会建议它是一个首选选项,因为如果你的项目在于,你可以更好地查看任何更改。存储库。
然而 - 最后几个Core Data项目我一直在使用Xcode来创建子类,这意味着你需要在扩展中创建另一个属性。
以下是我一直使用的一般方法:
首先,在模型文件中,我将属性命名为它所代表的对象类型,在本例中为数组:
然后创建一个扩展并添加一个在NSArray
和Swift Array
类型之间强制转换的计算属性:
extension CoreDataArrayObj {
var images: [String] {
get {
return imagesArray as? Array<String> ?? []
}
set {
imagesArray = newValue as NSArray
}
}
}