1

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

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

4

1 回答 1

10

“推送”是一种植根于 UINavigation 控制器的 UIViewController 堆栈机制。

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

举个例子

TabBar VC 

...Tab 1 -> UIViewController
...Tab 2 -> UIVIewController
...Tab 3 -> UINavigationController -> UIViewController(root)

只有 Tab 3 可以执行 push segue。

于 2012-05-28T10:57:44.223 回答