我正在尝试解决这个问题一段时间,
我在导航 Controller 中嵌入了一个 View Controller ,我想切换状态栏隐藏/显示。
问题是当我将状态栏设置为隐藏时,我的所有 View (包括导航栏)都会跳起来。
我怎样才能避免这种行为?
我只想隐藏状态栏而没有任何其他效果,并且导航栏从 0 扩展到 64 像素高度。
我创建了一个 simple project这证明了问题。
关于可能的解决方案的几点说明:
- 我不能使用自动布局
- 导航栏不能半透明
- “基于 View Controller 的状态栏外观”必须设置为 NO
最佳答案
老实说,我建议你修改你的愿望。您所描述的行为深深地构建在 UINavigationController 中,因此,基本上,如果不编写自己的 UINavigationController 子类,您将无法做您所描述的事情 - 不过,更老实说,我远不清楚您是什么'必须重写以干扰此行为,因此可能有必要编写替代接口(interface)。例如,您可以有一个包含导航栏和界面的呈现 View Controller ,现在您可以完全控制所有内容的高度和位置......在我看来,这是一条不值得走的路向下。
关于ios - 隐藏状态栏iOS 7时 View 框架发生变化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22617939/