用谓词搜索实现本地搜索
从网络请求数据,然后存储到数组中,这时候要进行搜索,我们可以使用谓词搜索.
- (void) textFieldDidChange:(UITextField*) TextField{ NSString *conditionStr = TextField.text; NSLog(@"+++++%@", conditionStr); // 2. 创建谓词,准备进行判断的工具 NSPredicate *predicate = [NSPredicate predicateWithFormat:@"self.pinyin CONTAINS [CD] %@ OR self.appName CONTAINS [CD] %@", conditionStr, conditionStr]; searchMuArray = [NSMutableArray arrayWithArray:[_s_allNameArray filteredArrayUsingPredicate:predicate]]; NSLog(@" searchMuArray = %@", searchMuArray); [myTableView reloadData]; }
这里面的searchMUArray就是返回的搜索数组,_s_allNameArray是存放整个数据的数组,要搜索的内容就存在其中