使用 - (void)applicationDidBecomeActive:(UIApplication *)应用程序从任何viewcontroller切换到特定的viewcontroller

时间:2013-02-26 23:23:22

标签: objective-c ios5

我想在用户背景应用程序后跳转到特定的屏幕(视图)。

如果我指定要离开的屏幕,我可以跳转到另一个屏幕,但我想从任何屏幕移动。

这甚至可能吗?

2 个答案:

答案 0 :(得分:1)

是的,这取决于你的应用程序的结构。

例如,如果您的应用内容是单个导航控制器,则只需将所需视图推送到导航控制器即可。或者您可以弹出到根视图,然后按下所需的视图。

如果是标签控制器,您可以在特定标签上推视图,然后手动设置标签控制器的选定标签。

或者如果视图是模态的,您可以在上面的任何一个上,甚至在应用程序本身的窗口上呈现它。

你有更具体的问题吗?

答案 1 :(得分:0)

在app delegate:

@property (nonatomic, strong) UINavigationController *mainNavController;

完成了发布:

self.mainNavController = // do your initialization here

self.window.rootViewController = self.mainNavController;

确实变得活跃:

[self.mainNavController pushViewController:myNewVC animated:YES];

或者您甚至可以更改根视图控制器:

self.window.rootViewController = newViewController;

您可以通过调用

从代码中的任何位置访问主导航
UINavigationController *mainNav = [(MyAppDelegate *)[[UIApplication sharedApplication] delegate] mainNavController];

用你做任何你的东西。