使用情节提要和UINavigationController
我的应用有很多UIViewControllers
。最初的UIViewController
名为viewController,是一种主页。
如果用户离开应用程序并返回,我总是希望用户在离开前总是返回主页(UIViewController
)而不是最后一个视图。在我的appDelegate
中,如何使用UIViewController
来调用/显示我的主页(applicationDidBecomeActive:
?
答案 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];
}