用谓词搜索实现本地搜索

从网络请求数据,然后存储到数组中,这时候要进行搜索,我们可以使用谓词搜索.

- (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是存放整个数据的数组,要搜索的内容就存在其中

时间: 2024-12-28 08:41:12

用谓词搜索实现本地搜索的相关文章

NSPredicate谓词搜索使用小记

iOS中的搜索正常情况下用NSPredicate都足以解决问题,比如我们有一个原数组_dataArraty: NSPredicate*predicate =[NSPredicate predicateWithFormat:@"name like %@", searchTexts]; NSArray * resultArr = [_dataArray filteredArrayUsingPredicate:predicate]; like语法可以匹配搜索 一般情况下,搜索是否包含某个字符

ios UISearchDisplayController 实现 UITableView 搜索功能

UISearchDisplayController 是苹果专为 UITableView 搜索封装的一个类. 里面内置了一个 UITableView 用于显示搜索的结果.它可以和一个需要搜索功能的 controller 关联起来,其它的像原 TableView 和搜索结果 TableView 的切换, mask 的显示等等都 封装好了,使用起来非常非常的简单.特别是要实现全屏搜索时使用最多. 全屏搜索的意思是如果你用了  NavigationBar 当点击搜索框时 TableView 会自动弹上去

UITableView的搜索:SearchBar和SearchDisplayController;UISearchController

之前我写过一篇关于在tableView中利用谓词搜索的随笔,当时使用的是自定义textField,最近在写电子书,需要在书目时实现搜索功能.所以在此把以前用于实现搜索功能系统提供的的SearchBar和SearchDisplayController的方法在这里和大家分享一下.不过在iOS8滞后,苹果已经不再推荐我们是使用这两个旧东西,而是让我们使用UISearchController,自然我也会把这个新东西的用法在这里演示一下. SearchBar和SearchDisplayController

[iOSDemo 搜索框]

// // MainViewController.h // UISearchDisplayControllerDemo // // Created by Enwaysoft on 14-8-20. // Copyright (c) 2014年 Enway. All rights reserved. // #import <UIKit/UIKit.h> @interface MainViewController : UITableViewController{ NSArray *data; NS

ios UITableView 搜索

自己实现 UITableView 搜索,相对于使用 UISearchDisplayController 来说自己写稍微麻烦了那么一点点,但是更加灵活.主要就是用一个字段区分出当前是搜索还是非搜索,然后 reload 相应的 data 就行了,和 UISearchDisplayController 的实现也很像,不过 UISearchDisplayController是两个 tableview 切换,这里我们是一个 tableview load 不同的数据. 关键代码: @interface Ma

iOS--- UITableView + UISearchDisplayController - - - - -实现搜索功能

iOS中UISearchDisplayController用于搜索,搜索栏的重要性我们就不说了,狼厂就是靠搜索起家的,现在越来越像一匹没有节操的狼,UC浏览器搜索栏现在默认自家的神马搜索,现在不管是社交,O2O还是在线教育等都会有一个搜索栏的实现,不过彼此实现效果是不一样的.iOS中的搜索栏实现起来相对简单一点,网上也有很多参考资料,不过靠谱的不是很多,很多都是iOS 8.0之前的实现,iOS 8.0上的实现貌似很少看到,可以运行,不过会看到searchDisplayController' is

iOS 字符串搜索方法大全

字符串搜索主要用于UITableView的搜索功能的筛选,过滤,查询 下面是一些流行的搜索查询方法 一.遍历搜索 for循环 根据要求:精确搜索(判读字符串相等)   模糊搜索(字符串包含) 相关知识点 在一个字符串中搜索子字符串 NSString *str1 = @"can you stest speak English"; NSString *str = @"stest"; //在str1这个字符串中搜索stest,推断有没有 if ([str1 rangeOf

SEO艺术阅读笔记

SEO(Search Engine Optimization)搜索引擎优化 搜索引擎:反映认知,连接贸易搜索引擎基础百度搜索高级语法确定SEO目标,定义网站受众设定SEO目标开发前定制SEO方案理解受众,寻找利基高级计划评估方法SEO的准备阶段方案主要元素确认网站开发过程和参与者定义网站信息框架审计已有网站,发现SEO问题确认目前服务器分析软件并获得权限确认竞争对手评估历史进展当前索引状态基准.排名基准.流量基准充分运用商业资产到SEO中关键词研究传统方法:行业专长,网站内容分析研究工具确定关键

iOS开发-NSPredicate

Cocoa中谓词(Predicate)提供了一个通用的查询方式处理数据,可以获取和指定数据的过滤形式,Cocoa实际开发中可以是使用NSPredicate及其父类NSComparisonPredicate和NSCompoundPredicate.其风格类似于SQL查询语言和正则表达式的混合体,提供了具有表现力的,自然语言界面来定义一个集合被搜寻的逻辑条件.一般来说稍微操作过数据库基本上很容易理解其中的方法,至于使用的方法也很简单. 集合中的NSPredicate Foundation提供使用谓词