我创建了一个具有登录名的应用程序。
它从一个欢迎视图控制器开始,检查用户是否登录,如果没有,打开一个登录视图控制器。如果用户已登录,或者一旦他们登录,就会像这样将用户推送到 Home View Controller。
App Delegate (did finish launching)
self.welcomeViewController = [[APPWelcomeViewController alloc] init];
self.homeViewController = [[APPHomeViewController alloc] initWithNibName:@"APPHomeViewController" bundle:nil];
self.navController = [[UINavigationController alloc] initWithRootViewController:self.welcomeViewController];
self.navController.navigationBarHidden = YES;
self.window.rootViewController = self.navController;
用户登录后,它会推送主页视图。
// Push the homeViewController onto the navController
[self.navController pushViewController:self.homeViewController animated:YES];
到目前为止,这一切都很好。然后我使用模态视图控制器进行设置,其中包括一个注销按钮。用户的注销运行这个:
// Log the user out
[User logOut];
// Then we need to remove the Settings Modal View Conrtoller
[self.presentingViewController dismissModalViewControllerAnimated:YES];
// Then we need to take user back to welcomeViewController
[self.navigationController pushViewController:welcomeViewController animated:YES];
它会按预期关闭设置视图控制器,但导航控制器仍保留在主页视图上。没有错误,有谁知道为什么这不能正常工作?