从选项卡视图控制器执行推送查询

use*_*492 1 tabs ios segue

我有一个标签栏控制器应用程序,标签栏控制器分叉成几个"标签"视图控制器,在一个视图控制器中我想将用户重定向到另一个视图控制器.我从该选项卡视图控制器创建一个segue到目标视图控制器,并给它一个Identifer.我在"viewDidAppear"中调用"performSegueWithIdentifier"来重定向用户.

当segue是"Modal"时它工作正常,但是因为我想保留标签,我想通过"Push"调用segue.但是,一旦我将segue更改为"Push",它就不再起作用了(它不会尝试转到目标视图控制器).该应用程序没有在模拟器上崩溃,只是停留在原始选项卡视图控制器上.

War*_*ton 10

"Push"是一种基于UINavigation控制器的UIViewController堆栈的机制.

除非选项卡中的视图控制器是导航控制器,否则无法执行推送.

举个例子

TabBar VC 

...Tab 1 -> UIViewController
...Tab 2 -> UIVIewController
...Tab 3 -> UINavigationController -> UIViewController(root)
Run Code Online (Sandbox Code Playgroud)

只有Tab 3可以执行推送segue.