ios - UINavigationbar 会在 UISearchbar 结束搜索后显示,如何隐藏导航栏

标签 ios objective-c uinavigationbar uisearchbar

我的应用在开头隐藏了导航栏。

但是在 View (全屏)中,有一个搜索栏。

当我开始搜索时,搜索栏停留在 View 的顶部。

然后我取消搜索,更改搜索栏的框架,出现导航栏。

为什么会这样?如何隐藏导航栏?

我试过这个:

我在 searchDisplayControllerWillEndSearch 和 searchDisplayControllerDidEndSearch 中添加了一些日志以显示导航栏状态。

In searchDisplayControllerDidEndSearch, navigationController.navigationBarHidden is YES,

In searchDisplayControllerDidEndSearch, navigationController.navigationBarHidden is NO.

然后我在searchDisplayControllerDidEndSearch中将navigationController.navigationBarHidden设置为YES,导航栏会显示但会在短时间内隐藏,并且导航栏不会再显示。(navigationController.navigationBarHidden 永远是 YES)

有什么想法吗?

谢谢!

最佳答案

在 ViewDidLoad 方法中编写如下代码。

self.navigationController.navigationBarHidden =YES

其他方面

self.navigationController.navigationBar.hidden =YES;

关于ios - UINavigationbar 会在 UISearchbar 结束搜索后显示,如何隐藏导航栏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26029853/

相关文章:

ios - 来自其他目标的 Storyboard 引用类中的 UIViewController

javascript - 如何禁用点击输入?

iOS 7.1 UINavigationbar 和 UIToolbar

ios - 在自定义单元格中实现倒计时器

ios - 如何制作用于向左滑动的 Instagram 聊天屏幕(UI)以在 iOS 中查看时间

ios - 如何在任何 uiviewcontroller 中打开 UIUserNotificationSettings

iphone - 在 ScrollView Touch 上退出 First Responder

iOS 创建具有动态内容的 PDF

ios - 使用 prefersLargeTitles 和 UITableView 平滑滚动

ios - 如何在 Swift 中的 UIView/Utility 类中获取导航栏