您好,我需要过滤联系人列表,但NSPredicate不能正常工作

时间:2016-09-28 04:29:46

标签: ios objective-c iphone nspredicate

我需要过滤一个联系人列表,但是在附加了一定数量的字母过滤器损坏样本图像并NSPredicate我正在使用之后,我不需要复制它。

NSPredicate *predicate = [NSPredicate predicateWithFormat:@"CAST(SELF.compositeName, 'NSString') contains[cd] %@",self.SearchNames.text];

enter image description here

enter image description here

3 个答案:

答案 0 :(得分:1)

您的谓词语法错误。

let predicate = NSPredicate(format: "SELF.compositeName CONTAINS[cd] %@", searchText)
let filtredArray = NSArray(array: YourContactarray.filteredArrayUsingPredicate(predicate))

当我们使用字典数组时,只需SELF.key对谓词有效。

此代码使用filtredArray重新加载表后,您可以将其存储在另一个数组中以进行全局访问。如果您在此代码中有任何问题,请与我们联系。

答案 1 :(得分:0)

首先,您必须使用NSPredicate过滤数组。您可以按照以下链接过滤数组。

NSPredicate Example

在该链接中,有许多使用NSPredicate过滤数组的示例。

此处array表示,用于在UITableView中显示。

您仍有疑问,请使用您使用过的数组发布代码。

答案 2 :(得分:0)

试试这个

            @foreach($brands as $brand)



                <tr>
                 <td>{{$brand->title_fa}}</td>
                 <td>{{$brand->title_en}}</td>
                 <td>{{$brand->user->fname}}</td> // error line