【问题标题】:iOS status bar - View Controller to Navigation ControlleriOS 状态栏 - 视图控制器到导航控制器
【发布时间】:2016-05-11 12:37:45
【问题描述】:

我做了一些研究并了解到,对于 iOS 7+ 的视图控制器上存在重叠状态栏问题(在 iOS 7 中引入新的状态栏布局)的快速修复方法是将其放在导航控制器中.

但是,当我转到 Xcode 时,该选项显示为灰色。我究竟做错了什么? (我是 Xcode 初学者,请多多包涵)。

使用导航控制器是否正确?

正如您在此处看到的,导航控制器位于状态栏的后面,而不是在其下方扩展:

【问题讨论】:

  • 您只能将导航控制器嵌入到 UIViewController 类中。在您尝试将 tis 嵌入 UIview 的屏幕截图中,这是不可能的
  • 啊 - 有道理。解决相关问题的最佳方法是什么 - 正确调整导航栏,使其不会重叠在状态栏后面?
  • 看到这个对你有帮助stackoverflow.com/questions/19105766/…

标签: ios xcode uiviewcontroller


【解决方案1】:

看起来您的控制器已经在导航控制器堆栈中,这就是为什么它没有显示嵌入导航控制器的选项。检查你的故事板。

【讨论】:

  • 嗨 Shiv,该项目是一种不使用故事板的类型(这是框架的“插件”)。如果是,则在 iOS 7+ 上,导航栏显示在状态栏后面。
【解决方案2】:

你创建 Xib 其设置 Top Bar 或 Navigation Bar,选择 XIB 然后看到右侧选择 Attributes Inspector 然后设置 状态栏,Top吧等,然后看我下面的截图,

以编程方式创建UIBarbutton 代码如下,

viewDidLoad方法:

UIBarButtonItem *leftBarButtonItem = [[UIBarButtonItem alloc] initWithImage:[UIImage imageNamed:@"imageName"] style:UIBarButtonItemStylePlain target:self action:@selector(backAction)];
[self.navigationItem setLeftBarButtonItem:leftBarButtonItem animated:NO];

它对我有用,希望它有帮助

【讨论】:

  • 我已经更新了我的答案,将状态栏设置为推断,然后以编程方式创建UIBarButton,它对我有用
  • 谢谢 - 我会试一试
猜你喜欢
  • 1970-01-01
  • 2014-08-03
  • 2011-09-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-09-15
  • 1970-01-01
  • 2012-10-08
相关资源
最近更新 更多