优雅的解决方案分裂视图控制器与登录

问题描述:

在一个简单的应用程序,只是显示一个分割视图控制器什么是最好的方式来显示主/明细显示之前登录用户,并且一旦登录被确认,显示拆分视图控制器的主/细节?优雅的解决方案分裂视图控制器与登录

有没有一种优雅的方式来处理这个没有凌乱的视图层次?

我使用IB来构建视图,但也欢迎编程解决方案。

+1

一旦登录被授予,在主窗口上更改视图控制器? – Desdenova

+0

登录是一个独立的任务,将主人的信息提供给细节 - 我会将角色分成两个VC,就像@Desdenova说的,或者保留一个VC并覆盖一个视图。他们应该分开。 –

我会出席启动一个模式视图,然后你可以登录字段配置。这允许您保持分割视图作为根视图。您已经配置拆分视图后

let storyboard = UIStoryboard(name: "Main", bundle: nil) 
    let modalView = storyboard.instantiateViewController(withIdentifier: "startupView") 
    modalView.modalPresentationStyle = .formSheet 
    splitViewController.present(modalView, animated: true, completion: nil) 

:在AppDelegate中的didFinishLaunchingWithOptions,您可以添加类似。这将呈现一个标识符为“startupView”的视图控制器,您可以在Storyboard中进行配置。

编辑 - 如果您不希望用户在登录前看到任何主/明细内容,您也可以将模态视图设置为页面模糊或背景模糊。

登录成功后,窗口的根设置为SplitViewController这样的:

let splitVC = UISplitViewController() 
let window = UIApplication.shared.windows.first 
window?.rootViewController = splitVC