coredata nspredicate NSInvalidArgumentException

时间:2015-07-14 16:25:06

标签: objective-c core-data nspredicate

下面的谓词格式有什么问题?

    if (devices && devices.count > 0 && ![tf_Search.text isEqualToString:@""]) {
    NSString* strSearch = [NSString stringWithFormat:@"%@", tf_Search.text];
    NSPredicate* preFilter =
        [NSPredicate predicateWithFormat:@"(dRIV_NAMESURNAME CONTAINS[cd] %1$@) || (vEHI_PLATE CONTAINS[cd] %1$@)",
                     strSearch];
    devicesFitered = [devices filteredArrayUsingPredicate:preFilter];
}

devicesFiltered数组不为空,并且有4个coredata设备实体。

dRIV_NAMESURNAME和vEHI_PLATE是实体字段。的NSString。

它给出> "' NSInvalidArgumentException',原因:'无法解析格式字符串"错误

如果我像以下两种格式一样单独使用它们,没问题

@"(dRIV_NAMESURNAME包含[cd]%@)" >没问题

@"(vEHI_PLATE CONTAINS [cd]%@)" >没问题

是关于%1 $ @?

是不是可以在objc中解决输入,例如cSharp" {1} asdas da {1} sdfs {2}"

正确的格式是什么?

0 个答案:

没有答案