修复 NSPredicate

Fix NSPredicate

注意:employeename 是多键值对数组中的一个键

NSPredicate 在用户键入字符搜索时查找所有员工姓名的结果

 NSPredicate *predicate = [NSPredicate predicateWithFormat:@"employeename BEGINSWITH[cd] %@", searchtxtField.text];
 NSArray *elementFound= [arr_employeeData filteredArrayUsingPredicate:predicate];
NSLog(@"arr_add_data=%@",arr_employeeData);

(
        {
        employeename = "Anoop";
        employeeMobile = 11111111;
    },
{
        employeename = "Anoop singh";
        employeeMobile = 11111111;
    },
  {
        employeename = "Anoop kumar";
        employeeMobile = 1133111111;
    },
 {
        employeename = "Vijay kumar";
        employeeMobile = 22222;
    },

)

如果您在搜索栏中输入 A,他将必须获得员工姓名以 A 开头的所有结果,依此类推

我猜你的谓词是没问题的。 但过滤用户的结果将在

NSArray *elementFound .

只需打印它,然后在您的程序中使用它。 因为这个方法 return 通过谓词过滤数组,但不改变原来的数组。 要改变原来的,

    NSMutableArray * mutab = [[NSMutableArray alloc] initWithArray:arr_employeeData];
    [mutab filterUsingPredicate:predicate];

和"mutab"数组,会有过滤后的结果