【问题标题】:XCode 6.3 cannot show navigation barXCode 6.3 无法显示导航栏
【发布时间】:2015-08-31 12:04:29
【问题描述】:

我在这里没有做复杂的事情。我有一个使用情节提要创建的 UITableView。只显示一些数据并有一个导航栏以放置标题和操作按钮。但是,当我运行我的应用程序时,该栏没有显示。 Xcode 是 6.3。有什么线索吗?通常这无需添加一行代码即可工作。

我做了一个全新的构建,但问题仍然存在。

视图是这样加载的

UIStoryboard *sb = [UIStoryboard storyboardWithName:@"RecentCalls" bundle:nil];                    
MyController *r = [sb instantiateViewControllerWithIdentifier:@"RecentCallsBoard"];
[viewControllers addObject:r]

【问题讨论】:

  • 使用 Debug->View Debugging 菜单拍摄 UI 快照并查看屏幕上的哪些视图、它们的位置以及是否有遮挡。
  • 我做到了,但我看不到导航栏

标签: ios iphone xcode uitableview uinavigationbar


【解决方案1】:

您是否确保在属性检查器中的“显示导航栏”复选框已打勾?

编辑

我看到你正在使用这条线:

[viewControllers addObject:r]

你为什么要这样做?您的 UINavigationController 应配置为“初始视图控制器”。你已经为你的 UITableViewController 设置了 segue,所以应该可以工作。

编辑 2

我认为这会导致问题:

UIStoryboard *sb = [UIStoryboard storyboardWithName:@"RecentCalls" bundle:nil];

你不应该实例化你的“RecentCalls”视图控制器,而是你的根导航控制器。否则它会直接导航到您的 UITableViewController,导致 UINavigationBar 缺失的原因。

【讨论】:

  • 是的,此选项已启用。
  • 故事板是从标签栏加载的。每个选项卡项都有一个情节提要,因此我需要将其添加到 viewControllers 对象中。
  • 非常感谢。在将 tableview 嵌入到导航控制器之前,我已经放置了名称 storyboardid。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-06-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多