Ios 两个导航栏显示

Ios 两个导航栏显示,ios,swift,uinavigationbar,Ios,Swift,Uinavigationbar,嗨,我是Swift的新手,正在尝试构建一个具有多个视图的应用程序 我的第一个视图(初始视图)嵌入在导航控制器中。 我的第二个视图嵌入在选项卡栏控制器中 我的第三个视图再次嵌入到导航控制器中 问题是,在我的第三个视图中,我看到了导航控制器,上面的视图将我带回第一个视图,下面的视图将我带回第二个视图 这是一种不正确的做法吗?我想去掉来自第一视图的导航栏 谢谢你的期待 注:我最初并没有尝试在第三视图上的导航栏。。但问题是,我也无法映射栏按钮项,因此也无法将第三视图嵌入到单独的导航控制器中 虽然它在Xc

嗨,我是Swift的新手,正在尝试构建一个具有多个视图的应用程序

我的第一个视图(初始视图)嵌入在导航控制器中。 我的第二个视图嵌入在选项卡栏控制器中 我的第三个视图再次嵌入到导航控制器中

问题是,在我的第三个视图中,我看到了导航控制器,上面的视图将我带回第一个视图,下面的视图将我带回第二个视图

这是一种不正确的做法吗?我想去掉来自第一视图的导航栏

谢谢你的期待

注:我最初并没有尝试在第三视图上的导航栏。。但问题是,我也无法映射栏按钮项,因此也无法将第三视图嵌入到单独的导航控制器中 虽然它在Xcode中显示得非常完美。。它在模拟器上显示2个导航栏

这不是一个优雅的解决方案,但仍然可以解决您的问题。在您的控制器上嵌入到
UITabBarController
中,您在其中添加了下一步按钮。在该控制器类上添加以下代码

在<代码>视图上将出现添加显示导航栏,在<代码>视图消失隐藏导航栏,如下面的代码所示

视图上,将出现

override func viewWillAppear(_ animated: Bool) {
self.navigationController.navigationBar.isHidden = false
}
override func viewDidDisappear(_ animated: Bool) {
   self.navigationController.navigationBar.isHidden = true
}
视图上消失

override func viewWillAppear(_ animated: Bool) {
self.navigationController.navigationBar.isHidden = false
}
override func viewDidDisappear(_ animated: Bool) {
   self.navigationController.navigationBar.isHidden = true
}

可以添加一些屏幕截图吗?请共享转换代码。删除第二个导航控制器。直接将tabcontroller嵌入第三个viewController如果在显示第三个viewController之前无法在第三个viewController的导航栏上添加菜单项,请隐藏第一个viewController的NaviagtionController。它会解决你的问题。