按下主页按钮时启动主ViewController

时间:2016-01-26 14:14:25

标签: ios objective-c

我正在做一个Objective-C应用程序,它有几个独立的ViewControllers。 我想在用户脉冲主页按钮和应用程序进入后台模式时显示我的主ViewController。 我发现的所有解决方案都适用于导航控制器。 在这种情况下,如何启动(以及在哪里)ViewController?

谢谢

解决: 最后我在AppDelegate中解决了这个问题:

- (void)applicationWillEnterForeground:(UIApplication *)application
{
    // Called as part of the transition from the background to the inactive state; here you can undo many of the changes made on entering the background.

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

1 个答案:

答案 0 :(得分:1)

您应该在主视图控制器中注册UIApplicationDidEnterBackgroundNotification。发布通知时,您应该将导航堆栈弹出到主视图控制器。

[self.navigationController popToRootViewControllerAnimated:YES];

或者,如果这不是根视图控制器,则应使用:

[self.navigationController popToViewController:self animated:YES];