applicationDidBecomeActive返回主页

时间:2013-05-15 12:08:55

标签: iphone ios

使用情节提要和UINavigationController我的应用有很多UIViewControllers。最初的UIViewController名为viewController,是一种主页。

如果用户离开应用程序并返回,我总是希望用户在离开前总是返回主页(UIViewController)而不是最后一个视图。在我的appDelegate中,如何使用UIViewController来调用/显示我的主页(applicationDidBecomeActive:

4 个答案:

答案 0 :(得分:6)

如果你的应用程序的根视图控制器是一个导航控制器,那么你可以像Marcin Kuptel所说的那样,这里有一个适合你背景的解决方案。

 - (void)applicationDidBecomeActive:(UIApplication *)application;
 {
   UINavigationController *navController = (UINavigationController *)self.window.rootViewController;
   [navController popToRootViewControllerAnimated:NO];
 }

答案 1 :(得分:2)

您可以使用:

[navigationController popToRootViewControllerAnimated: NO];

答案 2 :(得分:1)

检查一下。

UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle: nil];
ViewController *lvc = [storyboard instantiateViewControllerWithIdentifier:@"viewController"];
self.window.rootViewController = lvc;

将此代码放在applicationDidBecomeActive方法中。

答案 3 :(得分:1)

您的 applicationDidBecomeActive:可以出于多种原因被调用,例如在暂时中断(例如来电或短信)之后进入活动状态不仅仅是因为从背景到前景的过渡。我认为最好将其他人建议的代码放在 applicationWillEnterForeground中:

- (void)applicationWillEnterForeground:(UIApplication *)application
 {
   UINavigationController *navigationController = (UINavigationController *)self.window.rootViewController;
   [navigationController popToRootViewControllerAnimated:NO];
 }