导航栏仅显示在第一个 tabBarController

Posted

技术标签:

【中文标题】导航栏仅显示在第一个 tabBarController【英文标题】:Navigation Bar is shown only at the first tabBarController 【发布时间】:2018-11-21 11:14:06 【问题描述】:

我有一个tabBar,有 3 个屏幕(主页、收藏夹和设置)。使用Storyboard。所有这些屏幕都有一个NavigationController。导航栏仅显示在第一个屏幕 - 主页,其他没有导航栏(没有标题,没有按钮)。为什么会这样?

更新:我只在模拟器上遇到这个问题,但在真正的 iPhone 上一切都很好。 我的AppDelegate

        self.window = UIWindow(frame: UIScreen.main.bounds)
        self.window?.makeKeyAndVisible()
        let storyboard = UIStoryboard(name: "Main", bundle: nil)
        let initialViewController = storyboard.instantiateViewController(withIdentifier: "TabBarController")
        self.window?.rootViewController = initialViewController

我在TabBarController之前也有登录页面,通过这种方法从登录转到TabBarController

      let storyboard = UIStoryboard(name: "Main", bundle: nil)
      let singInViewController = storyboard.instantiateViewController(withIdentifier: "TabBarController")
      UIApplication.shared.keyWindow?.rootViewController = singInViewController
      self?.present(singInViewController, animated: true, completion: nil)

【问题讨论】:

附上您的故事板设置的屏幕截图。 这个问题的答案和1ts一样 【参考方案1】:

为每个视图控制器添加单独的导航栏,并将 UINavigation 控制器附加到选项卡栏控制器。

【讨论】:

谢谢,我有相同的情节提要结构。请查看我的更新,也许有一些新信息

以上是关于导航栏仅显示在第一个 tabBarController的主要内容,如果未能解决你的问题,请参考以下文章

在第二个标签栏项目中不显示搜索控制器的键盘

导航栏仅在 iOS5 中部分隐藏

带导航栏的 TabBarController

如何通过推送通知显示带有 TabBarController 导航的视图控制器

CSS Apple的导航栏仅使用CSS

TabBarController 的自动布局问题