下面这段代码是放在AppDelegate中的applicationDidEnterBackground方法中,是为了当程序进入后台后,判断是否是指定的ViewController,如果是则加载指定的ViewController。
if ([self.window.rootViewControllerisKindOfClass:[UINavigationControllerclass]]) {
UINavigationController *nav = (UINavigationController *)self.window.rootViewController;
UIViewController *vc = nav.viewControllers[nav.viewControllers.count - 1];
if ([vcisKindOfClass:[NewDisplayViewControllerclass]] || [vcisKindOfClass:[POSpayViewControllerclass]]) {
NewDisplayLoginViewController *nl = [[NewDisplayLoginViewControlleralloc]init];
UINavigationController *nav = [[UINavigationControlleralloc]initWithRootViewController:nl];
[self.windowsetRootViewController:nav];
[self.windowmakeKeyAndVisible];
}
}
在界面代码中控制window的跳转
+(void)JumpWalletLogin
{
WXXViewController *wxx = [tooles GetinstantiateViewControllerWithIdentifier:@"WXXView"];
UINavigationController *nav = [[UINavigationController alloc]initWithRootViewController:wxx];
WXXAppDelegate *appDelegate = (WXXAppDelegate *)[[UIApplication sharedApplication] delegate];
[appDelegate.window setRootViewController:nav];
[appDelegate.window makeKeyAndVisible];
}