【问题标题】:iOS 9 Navigation Bar Under Status Bar状态栏下的 iOS 9 导航栏
【发布时间】:2015-12-22 13:01:15
【问题描述】:

如何防止导航栏进入状态栏下方,并尊重状态栏的空间?

【问题讨论】:

  • 您要隐藏状态栏还是在状态栏下方启动导航栏?
  • 我正在尝试启动状态栏下方的导航栏
  • 那么,最好自己创建 NavigationBar View

标签: ios uinavigationitem


【解决方案1】:

[[UIApplication sharedApplication] setStatusBarHidden:YES];

【讨论】:

  • 再说一次,不是想隐藏状态栏,我想要它下面的导航栏
【解决方案2】:

如果您的应用在每个视图中都使用UINavigationController,当UINavigationController 存在时,UINavigationBar 将自动放置在状态栏下方(标准距离我们所在的屏幕顶部的 20 点偏移)习惯于以前的 iOS 版本)。

Check this link for details

如果您不想让状态栏隐藏它。

【讨论】:

  • 我不相信你说的是真的,因为我使用的是 UINavigationController,但是导航栏没有放在状态栏下方,如图所示。
  • 状态栏现在是您导航栏的一部分。在 iOS 7 之前,我们有 44px 的导航栏高度现在是 64px 。您可以在您的笔尖中验证这一点。选择您的视图,在您的属性检查器中,将您的顶部栏设置为不透明导航栏,并将您的视图大小设置为任何 iPhone 设备大小,您会看到它将从设备高度减去 64 像素,并为您提供其余空间。跨度>
【解决方案3】:

在 viewController 中你想隐藏 satusBar:

- (BOOL)prefersStatusBarHidden {
return YES;
}

【讨论】:

  • 不想隐藏栏,我想要它下面的导航栏。
  • 普通视图不会覆盖状态栏,因为它们在同一个窗口中并且状态栏是顶层,但是您可以将视图添加到新窗口然后设置 newWindow.windowLevel = UIWindowLevelAlert .
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-03-03
  • 1970-01-01
  • 1970-01-01
  • 2018-07-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多