#ios #iphone #swift #nspredicate
#iOS #iPhone #swift #nspredicate
Вопрос:
Я создал условный блок только для проверки NSPredicate с помощью Block. Вот как я это делаю,
Если бы вы могли направить меня сюда, это было бы большой помощью.
Заранее спасибо.
Комментарии:
1. что такое CellInfo? Кроме того, размытый рисунок = ой, мои глаза.
2. Это NSObject. @Kreiri
Ответ №1:
Вы должны использовать ту же сигнатуру функции, которая требуется NSPredicate для блока. В вашем случае вам следует изменить свой код на:
var condblock = {
(celInfo: AnyObject!, dic : NSDictionary!) -> Bool in
return true
}
let pred = NSPredicate(block: condblock)
Комментарии:
1. вы пробовали это? выдает то же самое «не удалось найти перегрузку …» в Xcode6 beta2
2. Ах, вам также нужно использовать AnyObject! вместо CellInfo! Я обновил ответ
3. Он по-прежнему выдает ту же проблему.
Ответ №2:
Если вы можете использовать встроенное замыкание и вывод типа, может быть, таких ошибок легче избежать?
let pred = NSPredicate { cellInfo, dic in true }
Отказ от ответственности: у меня нет Xcode6