看到很多有关UISearchBar 和 UISearchDisplayController的文章 都是讲这俩个的属性列出来,很少有解决问题的文章
自己写了一个地址搜索的demo,效果如下
说一下自己碰到的问题吧
首先:我的地址是存在本地的一个txt文件中的,用的JSONKit去解析 JSONKit使用的是MRC,所以我们先需要做一些设置
http://www.bubuko.com/infodetail-919984.html
自己碰到的第二个问题就是因为自己定义了一个navigationBar,导致了点击searchBar之后,searchBar被覆盖了,就是类似这种情况
这种情况把自定义的navigationBar去掉,使用系统定义的就ok
图没了。。。
第三个问题,也是最蛋疼的问题,就是searchResultsTableView的位置和滑动条出现问题,例如滑动条滑不到屏幕的最下方,(并不是因为数据不够导致滑不到最下面,下图是15个cell的结果)
出现该问题的原因是因为;searchResultsTableView的ContentInset和ScrollIndicatorInsets发生的变化 (默认是UIEdgeInsetsZero)
解决办法:
-(void)searchDisplayController:(UISearchDisplayController *)controller willShowSearchResultsTableView:(UITableView *)tableView
{
[tableView setContentInset:UIEdgeInsetsZero];
[tableView setScrollIndicatorInsets:UIEdgeInsetsZero];
}
这个我是看http://segmentfault.com/a/1190000000747280才知道的。。。
补充一点:找数据时用到的是NSPredicate