我正在使用侧视图控制器设置:https ://github.com/edgecase/ECSlidingViewController
初始视图控制器使用标识符为“InitialViewController”的情节提要加载。
一旦为此加载到 viewDidLoad 中,我将使用以下命令检查用户是否已登录:
UIStoryboard *storyboard;
if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone) {
storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard_iPhone" bundle:nil];
} else if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) {
storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard_iPad" bundle:nil];
}
if (![PFUser currentUser]){
self.topViewController = [storyboard instantiateViewControllerWithIdentifier:@"WelcomeVC"];
} else {
self.topViewController = [storyboard instantiateViewControllerWithIdentifier:@"HomeVC"];
}
根据上述,如果用户没有登录,它会加载 WelcomeVC。WelcomeVC 是一个导航控制器,其中包含 3 个 Vc。欢迎/登录/注册。
用户登录后,我需要将 topViewController(如上)更改为 HomeVC。如果可能,可以关闭名为 WelcomeVC 的导航控制器。如何更改此 topViewController 我已经尝试过,但它不起作用:
UIStoryboard *故事板;
if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone) {
storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard_iPhone" bundle:nil];
} else if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) {
storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard_iPad" bundle:nil];
}
self.EVC = [storyboard instantiateViewControllerWithIdentifier:@"InitialViewController"];
self.EVC.topViewController = [storyboard instantiateViewControllerWithIdentifier:@"HomeVC"];