Xcode 9.3 - NSPredicate Bool崩溃

Ale*_*cci 1 xcode ios swift xcode9.3

在Xcode 9.3更新之后,我注意到如果你想让Predicate像这样:

let predicate = NSPredicate(format: "preferred = %@", true as CVarArg)
Run Code Online (Sandbox Code Playgroud)

你有一个崩溃.但在Xcode 9.2中,这不是问题.任何的想法?

vad*_*ian 5

//解决方案3 [ Apple文档 ]

let predicate = NSPredicate(format: "preferred == TRUE")
Run Code Online (Sandbox Code Playgroud)

发生异常是因为true不是object(%@).你需要%d占位符

let predicate = NSPredicate(format: "preferred = %d", true)
Run Code Online (Sandbox Code Playgroud)