每当我尝试使用 NSPredicate 时,它都会出错:
由于未捕获的异常“NSUnknownKeyException”而终止应用程序,原因:“[<Project.Object 0x7fc805c23770> valueForUndefinedKey:]:此类与键happyfacevalue 的键值编码不兼容。”
现在我无法弄清楚为什么它拒绝工作。我什至尝试使用@objc 初始化我想要的数组,但它仍然崩溃。
我知道过滤器功能非常简单,但我需要能够使用 NSCompoundPredicate。我不认为我可以使用过滤器功能达到我使用 NSCompoundPredicate 可以达到的详细搜索级别。
let tempPredStr = model.selectionQueryArray[count + 1] + "==" + model.inputQueryArray[count + 1]
let predicate = NSPredicate(format: tempPredStr, NSNumber(value: false))
arrayOfPredicates.append(predicate)
/*
let predicateIsNumber = NSPredicate(format: "isStringOrNumber == %@", NSNumber(value: false))
let predicateIsEnabled = NSPredicate(format: "isEnabled == %@", NSNumber(value: true))
*/
count = count + 1
}
let andPredicate = NSCompoundPredicate(type: .and, subpredicates: arrayOfPredicates)
let filteredArray = (predicateArray as NSArray).filtered(using: andPredicate)
我希望它只使用预先构建的谓词进行谓词并生成对象数组。