Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/121.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/webpack/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios predicateWithSubstitutionVariables始终引发异常_Ios_Nspredicate - Fatal编程技术网

Ios predicateWithSubstitutionVariables始终引发异常

Ios predicateWithSubstitutionVariables始终引发异常,ios,nspredicate,Ios,Nspredicate,我试图使用predicateWithSubstitutionVariables过滤对象数组,这段代码引发异常 NSPredicate *pSample = [NSPredicate predicateWithFormat:@"name CONTAINS [c] $variable"]; [pSample predicateWithSubstitutionVariables:@{@"variable":@"sample string"}]; NSLog(@"%@", [mArray filtere

我试图使用predicateWithSubstitutionVariables过滤对象数组,这段代码引发异常

NSPredicate *pSample = [NSPredicate predicateWithFormat:@"name CONTAINS [c] $variable"];
[pSample predicateWithSubstitutionVariables:@{@"variable":@"sample string"}];
NSLog(@"%@", [mArray filteredArrayUsingPredicate:pSample]);
我得到的异常:

reason: 'Can't get value for 'variable' in bindings {
}.
为什么我不能用这个?(我不是在寻找替代解决方案)

更改代码如下:

NSPredicate *pSample = [NSPredicate predicateWithFormat:@"name CONTAINS [c] $variable"];
NSPredicate *actualPredicate = [pSample predicateWithSubstitutionVariables:@{@"variable":@"sample string"}];
NSLog(@"%@", [mArray filteredArrayUsingPredicate: actualPredicate]);
您创建的第一个谓词是用于创建实际谓词的模板
predicateWithSubstitutionVariables
提供所需的实际谓词