您好我是IOS开发的新手。我正在开发小应用程序我想使用拆分视图。但是这种分裂视图不是我的根本观点。我的应用程序从登录开始,而不是拆分视图。登录后我想启动我的主视图,即拆分视图控制器。所以这是我的问题,如果我将主视图设置为根视图,即我的应用程序的起点它工作正常。但是,如果我将登录控制器设置为根控制器,那么它会给出异常。在我的AppDelegate中,我设置了以下内容:
UISplitViewController *splitViewController = (UISplitViewController *)self.window.rootViewController;
UINavigationController *masterNavigationController = [splitViewController.viewControllers objectAtIndex:0];
SidePannelViewController *controller = (SidePannelViewController *)masterNavigationController.topViewController;
controller.splitViewController = splitViewController;
splitViewController.delegate = (id)controller;
一旦我将主视图设置为根控制器,它就可以正常工作。如何解决这个问题呢?需要帮忙。我希望将登录屏幕保持为普通登录视图控制器,并在登录后启动拆分视图控制器。谢谢。
答案 0 :(得分:1)
您可以将LoginScreen作为模式显示在拆分视图控制器的顶部,否则您最初可以将LoginScreen设置为rootViewController,然后将其作为rootController替换为SplitViewController。
- (void)viewDidAppear:(BOOL)animated
{
[super viewDidAppear:animated];
[self performSegueWithIdentifier:@"showLogin" sender:self];
}
用户登录后成功关闭登录屏幕。
希望这有帮助。
答案 1 :(得分:0)
当用户未登录时,您可以将LoginViewController
设置为根视图控制器,如果用户已登录,则将root更改为拆分视图。只需检查didFinishLaunchingWithOptions方法以检查用户是否是否登录并相应地设置根目录。