我遇到了UISearchViewController的问题(使用故事板布局)。
我的主视图控制器顶部有一个导航栏,我在其下方放置了UISearchBar。 MKMapView扩展到搜索栏和导航栏下方。
当SearchViewController处于活动状态时,导航栏会向上滑动。我添加了一个autolayout约束来将uisearchbar粘贴到导航栏的底部。但是,搜索栏似乎不会在状态栏下方和地图视图上方延伸。相反,mapview出现在上方20px的间隙中。
非常感谢任何帮助!
答案 0 :(得分:1)
在导航栏上将半透明设置为false并未解决此问题。但是,设置searchBar的半透明属性对我有用。
我使用这些UISearchDisplayDelegate
方法根据searchBar
是否有效来更改值。
func searchDisplayControllerWillBeginSearch(controller: UISearchDisplayController) {
// self.searchBar is an IBOutlet from storyboard
self.searchBar.translucent = false
}
func searchDisplayControllerWillEndSearch(controller: UISearchDisplayController) {
self.searchBar.translucent = true
}
答案 1 :(得分:0)
我认为可以用navigationBar.translucent = NO修复它;在iOS 7中默认设置为YES。我自己也遇到了很多麻烦。
答案 2 :(得分:0)
在info.plist文件中尝试此操作以禁用状态栏