Login 如何为拆分视图控制器创建启动页

Login 如何为拆分视图控制器创建启动页,login,swift,uisplitviewcontroller,splash-screen,xcode6,Login,Swift,Uisplitviewcontroller,Splash Screen,Xcode6,(Xcode6-beta3、Swift、iPad、iOS8) 如何使用拆分视图控制器为iPad应用程序创建启动页 我尝试了直接的方法,将小箭头拖放到新的视图控制器上,并设置一个按钮在内部润色时切换到分割视图控制器。这会引发内存错误 我还尝试从AppDelegate中的application函数中注释出以下代码,但我得到了一个 ***由于未捕获异常“NSInternalInconsistencyException”而终止应用程序,原因:“无效参数不满足:[标识符长度]>0' func applic

(Xcode6-beta3、Swift、iPad、iOS8)

如何使用拆分视图控制器为iPad应用程序创建启动页

我尝试了直接的方法,将小箭头拖放到新的视图控制器上,并设置一个按钮在内部润色时切换到分割视图控制器。这会引发内存错误

我还尝试从
AppDelegate
中的
application
函数中注释出以下代码,但我得到了一个

***由于未捕获异常“NSInternalInconsistencyException”而终止应用程序,原因:“无效参数不满足:[标识符长度]>0'

func application(application: UIApplication!, didFinishLaunchingWithOptions launchOptions: NSDictionary!) -> Bool {


// Override point for customization after application launch.

//        let splitViewController = self.window!.rootViewController as UISplitViewController
//        let navigationController = splitViewController.viewControllers[splitViewController.viewControllers.count-1] as UINavigationController
//        splitViewController.delegate = navigationController.topViewController as DetailViewController

    return true
}
我甚至在情节提要中断开了主细节视图的连接,所以应该加载的只是启动页面,但它仍然崩溃


我被卡住了!感谢您的帮助。

您遇到的问题与应用程序中的代码有关:didFinishLaunchingWithOptions:

在该代码中,模板访问序列图像板中定义的“第一个”视图控制器,以访问拆分视图控制器并设置其委托属性。如果更改“小箭头”,则更改UIWindow的rootViewController属性,并且属于不同的视图控制器,则会崩溃

要解决这个问题,最好的办法是:

  • 按照所述创建情节提要(普通ViewController,与原始分割VC有一段距离)
  • 注释掉应用程序中的代码:didFinishLaunchingWithOptions
  • 为新添加的场景创建UIView控制器子类
  • 在该类中,在完成segue之前,插入此修改版本的代码以设置拆分视图控制器的委托属性:

    let splitViewController = segue.destinationViewController as UISplitViewController
    
    let navigationController = splitViewController.viewControllers[splitViewController.viewControllers.count-1] as UINavigationController
    
    splitViewController.delegate = navigationController.topViewController as DetailViewController
    

工作项目

刚刚使用单视图应用程序模板创建了一个新项目。添加了分割视图控制器。将segue from按钮设置为Split VC。作品我没有添加VC代码。你能分享你的项目吗?好的。。。你刚刚成为我的个人英雄。非常感谢你。如果您想输入此答案,我会将其标记为已接受:d为了子孙后代,我使用
Master Detail应用程序
模板创建了该应用程序。然后我创建了一个新的视图控制器,并将其插入到拆分视图控制器之前。这是行不通的。我是如何处理这种情况的,希望能有所帮助。