Хорошо, я добавлю это к моему ответу !! Благодарю. Небольшое соображение для решения проблемы таким способом заключается в том, что вы теряете немного ясности относительно того, почему свойство непосредственно помечено
ользую NSPredicate для фильтрации массива в Swift. Проблема заключается в том, что после обновления до iOS 11 (Xcode 9 / w Swift 4) у меня продолжает появляться сбой в строке фильтра. Вот журнал сбоев:
Завершение работы приложения из-за необработанного исключения NSUnknownKeyException, причина:> '[valueForUndefinedKey:]: этот класс не является ключом> значение, совместимое с кодировкой для имени ключа.'
Вот пример класса, который у меня есть массив:
final class Model: NSObject {
let name: String
init(name: String) {
self.name = name
}
}
Вот код, который дает сбой:
let myArray = [Model(name: "Jason"), Model(name: "Brian")]
let predicate = NSPredicate(format: "name == 'Jason'")
let filteredArray = myArray.filter { predicate.evaluate(with: $0)}
Вопрос в том, почему происходит сбой, когда я обновился до iOS 11?