我的应用程序在我的设备上的任何配置和调试配置下都可以在模拟器中运行良好但是在我创建NSPredicate时我正在执行的获取请求中崩溃。
以下是有问题的代码:
- (void)searchBar:(UISearchBar *)theSearchBar textDidChange:(NSString *)searchText {
//some fetch request code code
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"ItemSKU CONTAINS[c] %@ OR ProductName CONTAINS[c] %@", searchText];
// more code
}
如果我删除这一行,一切都很完美,但我必须有这个谓词。
答案 0 :(得分:5)
为什么你有两个格式说明符只有一个得到一个值?它崩溃了,因为那不是定义的行为;如果您提供两个%@
格式说明符,请提供searchText
和其他内容,否则您将崩溃。