我有一个 NSManagedObject
的子类,当使用控制流语句检查实例的属性值是否为零时,出现以下错误;
'Int' is not convertible to 'Range
我想要做的是检查属性值是否有值,如果有,则创建该值的实例(值类型是 NSManagaedObject 的另一个子类)。
子类:
class Items: NSManagedObject {
@NSManaged var index: NSNumber
@NSManaged var title: String
@NSManaged var folder: Folder
}
检查值时在我的 TableView 中出现错误 - 我获取所有 Items 对象并转换为数组以在 TableView 中显示:
错误
var folder: Folder!
//Error occurs here
if self.items[indexPath!.row].folder != nil {
folder = self.items[indexPath!.row].folder
}
我不确定为什么会发生这种情况以及如何解决该问题,有人对我正在尝试做的事情有任何解决方案吗?
最佳答案
我使用 obj-c,而不是 Swift。什么是文件夹对象?我找不到任何有关它的文档。
在不了解该对象的更多信息的情况下,也许可以尝试:
if self.items[indexPath!.row].folder {
folder = self.items[indexPath!.row].folder
}
如果文件夹不是nil,那么应该可以工作。不过,您必须验证您认为的 nil 文件夹是否不会让您进入该 if 语句。在不知道文件夹是什么的情况下,我不知道如何将其视为条件。
关于ios - 检查属性值时,“Int”无法转换为 'Range<Int>',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31843738/