0

我正在应用程序中实现抽屉布局设计。但是我的应用程序从一个带有动画徽标(简单的 HTML5 动画)的小屏幕开始,然后是登录屏幕(g+ 和 Facebook),然后是我实现 MMDrawerController 的主屏幕。

问题在我的AppDelegate

 window?.rootViewController = centerContainer
 window?.makeKeyAndVisible()

所以应用程序在这个屏幕上启动。是否可以不使 rootviewcontroller 成为中心容器并且仍然使用 MMDrawerController?

我需要在我的应用程序中将 MMDrawerController 添加到我的第三个视图控制器但是,为了使 MMDrawerController 工作,它需要是 rootViewController

我已经尝试向我的第一个 ViewController 添加一个 Empty MMDrawerLayout 但是,然后,第三个控制器不再工作

 //global var 
 var centerContainer : MMDrawerController?
 // then the appdelegate 
 let rootViewController = self.window!.rootViewController
 let mainStoryBoard:UIStoryboard = UIStoryboard(name: "Main", bundle: nil)
 let centerViewController = mainStoryBoard.instantiateViewControllerWithIdentifier("GaleriaPeliculas")

 let leftViewController = mainStoryBoard.instantiateViewControllerWithIdentifier("LeftSideViewController")

 let leftSideNav = UINavigationController(rootViewController: leftViewController)
 let centerSideNav = UINavigationController(rootViewController: centerViewController)

 //And here is the problem, 
 window?.rootViewController = centerContainer //how can it work without this line??
 window?.makeKeyAndVisible()
4

1 回答 1

0

是否可以不使 rootviewcontroller 成为中心容器并且仍然使用 MMDrawerController?

不,如果您仍想使用左/右抽屉,则需要将 MMDrawerController 保留为 rootViewController。它与 UITabBarController 没有什么不同,因为它包含多个视图控制器以有条件地显示。

于 2016-01-25T23:00:01.397 回答