关于UISearchDisplayController和 uisearchBar使用时遇到的问题

这个问题 困扰了  我好几个小时,以前  写demo 的时候使用的 是全局 变量,没问题,今天由于使用了局部变量造成,点击uisearchBar之后无法向上弹起的效果,经研究是这里面除了一点小问题:

解决办法就是讲UISearchDisplayController写成全局变量.

_displayController = [[UISearchDisplayController alloc]initWithSearchBar:searchBar contentsController:self];

我们在使用searchBar时一般使用的都是局部变量,但使用UISearchDisplayController一定要使用全局变量,否则就会失去我们想要达到的效果,还有就是,使用UISearchDisplayController时,注册表的重用标识符,一般不能使用register的方法了,因为当你点击searchBar时会有另外一个表的显示,所以还是在表的协议方法里面定义重用标识符比较好,即:

 UITableViewCell * cell = [tableView dequeueReusableCellWithIdentifier:@"cell"];

如果实在想用register,也可以,需要写两个注册事件,在cellForRow里面也需要写两个cell的重用.

发布了10 篇原创文章 · 获赞 0 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/a892445213/article/details/41450657