Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 如何防止以下视图控制器继承导航视图控制器栏?_Ios_Swift_Xcode - Fatal编程技术网

Ios 如何防止以下视图控制器继承导航视图控制器栏?

Ios 如何防止以下视图控制器继承导航视图控制器栏?,ios,swift,xcode,Ios,Swift,Xcode,我的应用程序从一个导航控制器开始,然后使用segues继续运行到两个视图控制器,然后是一个选项卡栏控制器 问题是选项卡栏控制器仍然继承顶部的导航栏,并显示“后退”按钮。我不希望用户能够单击后退按钮,而是使用单击单独的注销按钮返回到开始 基本上,选项卡栏控制器后面的视图如何取消继承导航栏?您可以这样做 self.navigationController?.isNavigationBarHidden = true 但这不是正确的方法,如果在显示选项卡后不再需要以前的vcs流,则需要通过分配 (UI

我的应用程序从一个导航控制器开始,然后使用segues继续运行到两个视图控制器,然后是一个选项卡栏控制器

问题是选项卡栏控制器仍然继承顶部的导航栏,并显示“后退”按钮。我不希望用户能够单击后退按钮,而是使用单击单独的注销按钮返回到开始

基本上,选项卡栏控制器后面的视图如何取消继承导航栏?

您可以这样做

self.navigationController?.isNavigationBarHidden = true
但这不是正确的方法,如果在显示选项卡后不再需要以前的vcs流,则需要通过分配

(UIApplication.shared.delegate as! AppDelegate).window!.rootViewController = tabBar

如果出现这种情况,用户不能返回上一页,除非在用户转到tabbar控制器后注销,否则最好更改窗口的根视图控制器,而不是显示/推送它

如果两者是两个不同的流,最好使用两个导航控制器。
示例:注册/登录流程和实际业务流程。使用两个不同的导航控制器

使我的代码现在看起来像:
让nameOfTabBarController=self.storyboard?。实例化eViewController(标识符为:“nameOfTabBarController”)为!阿巴斯控制器的名称(UIApplication.shared.delegate as!AppDelegate).window!。rootViewController=nameOfTabBarController
但在两者之间切换时应用程序崩溃。什么崩溃日志??