2

我有一个 UISearchViewController 的问题(使用故事板布局)。

我的主视图控制器在顶部有一个导航栏,我在其下方放置了 UISearchBar。MKMapView 在搜索栏和导航栏下方扩展。

当 SearchViewController 处于活动状态时,导航栏会向上滑动。我添加了一个自动布局约束来将 uisearchbar 粘贴到导航栏的底部。但是,搜索栏似乎没有延伸到状态栏下方和地图视图上方。相反,地图视图出现在上方 20 像素的间隙中。

主视图控制器

搜索视图控制器活动

任何帮助将不胜感激!

4

3 回答 3

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
}
于 2014-10-12T15:32:25.067 回答
0

我认为它可以用 navigationBar.translucent = NO; 来解决。它在 iOS 7 中默认设置为 YES。我自己遇到了很多麻烦。

于 2013-10-08T19:12:26.890 回答
0

在 info.plist 文件中尝试此操作以禁用状态栏

在 info.plist 文件中尝试此操作以禁用状态栏

于 2014-09-18T07:19:39.473 回答