我开发的应用程序要求用户登录以获取完整功能,但允许用户跳过登录进行浏览。
在我的故事板中,我有一个UIViewController作为登录屏幕。当我单击“跳过”按钮时,它会进入下一个屏幕。
这是我遇到问题的时候...我希望当用户按下跳过时弹出的屏幕有一个导航栏和一个标签栏。我将这两件事添加进去并且有效。
在我的app委托文件中,我检查用户是否已跳过应用程序直接进入菜单屏幕。问题是,它只是一个没有导航栏和标签栏的空白屏幕。当我按下跳过时,它工作正常,但在关闭它后重新启动应用程序时却没有。
以下是检查用户是否已跳过登录的代码:
//Check NSUserDefaults to get the value for skipLogin
BOOL skipLogin = [[NSUserDefaults standardUserDefaults] objectForKey:kACUserDefaultsSkippedLoginKey];
//Check to see if the user has logged in or has already pressed the skip button.
//If not, show the LoginViewController
if(skipLogin || [PFUser currentUser]) {
UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Main" bundle:nil];
MenuViewController *menuView = [storyboard instantiateViewControllerWithIdentifier:@"MenuView"];
self.window.rootViewController = menuView;
}else{
UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Main" bundle:nil];
LoginViewController *loginView = [storyboard instantiateViewControllerWithIdentifier:@"LoginView"];
self.window.rootViewController = loginView;
}
我做错了什么?
答案 0 :(得分:0)
为什么不使用performSegueWithIdentifier
推送新的视图控制器?
也许问题是你正在加载故事板,你也在设置窗口的rootViewController。
答案 1 :(得分:0)
我继续将初始视图控制器切换到菜单视图,如果用户没有登录或跳过登录,我只需弹出登录视图。它的工作方式要好得多。
谢谢你们的帮助!