NSPredicate导致EXC_BAD_ACCESS - 但仅适用于设备上的Release配置

时间:2010-09-14 22:53:55

标签: iphone objective-c ipad

我的应用程序在我的设备上的任何配置和调试配置下都可以在模拟器中运行良好但是在我创建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
}

如果我删除这一行,一切都很完美,但我必须有这个谓词。

1 个答案:

答案 0 :(得分:5)

为什么你有两个格式说明符只有一个得到一个值?它崩溃了,因为那不是定义的行为;如果您提供两个%@格式说明符,请提供searchText和其他内容,否则您将崩溃。