UISearchDisplayController 奇怪的行为(视频)
Posted
技术标签:
【中文标题】UISearchDisplayController 奇怪的行为(视频)【英文标题】:UISearchDisplayController weird behavior (video) 【发布时间】:2013-11-21 00:30:38 【问题描述】:当我将 IB(Xcode 5)中的 UISearchDisplayController 添加到 UINavigationController 中显示的 UIViewController 并按下搜索栏时,搜索栏会被黑色半透明视图覆盖。
这是视频:http://quick.as/ezrc7bq
我还没有接触任何代码,所以我不确定那里发生了什么。
【问题讨论】:
【参考方案1】:这实际上是 ios UISearchBarDisplayController 中的一个错误(在 UINavigationController 中使用时)。默认行为是突出显示文本框,其余视图变暗,但此暗视图框架不考虑导航栏高度。
解决这个问题的最简单方法是实现搜索栏委托
- (void)searchDisplayControllerWillBeginSearch:(UISearchDisplayController *)controller self.navigationController.navigationBarHidden = YES; - (void) searchDisplayControllerWillEndSearch:(UISearchDisplayController *)controller self.navigationController.navigationBarHidden = 否;其他选择包括修改搜索栏的框架
- (void)searchDisplayControllerWillBeginSearch:(UISearchDisplayController *)controller // 将搜索栏动画到顶部 ie. y=0 [UIView animateWithDuration:0.25f 动画:^ CGRect 框架 = 控制器.searchBar.frame; frame.origin.y = 0; 控制器.searchBar.frame = 框架; ];【讨论】:
感谢您的视频!以上是关于UISearchDisplayController 奇怪的行为(视频)的主要内容,如果未能解决你的问题,请参考以下文章
为啥 UISearchDisplayController 有时有效,有时无效?
iOS UISearchDisplayController学习笔记
在 UISearchDisplayController 上遇到僵尸问题
修复 UITableView 顶部的 UISearchdisplaycontroller 搜索栏