我在横向模式下使用我的SpriteKit游戏使用UIKit时遇到问题。我正在尝试使用UIKit创建一个菜单系统。
我注意到当我从一个viewcontroller切换到另一个viewcontroller时多次调用viewWillLayoutSubviews
。通过使用viewDidLoad来解决此问题..但是我的横向游戏的尺寸不正确。这是我的一些代码
func application(application: UIApplication!, didFinishLaunchingWithOptions launchOptions: NSDictionary!) -> Bool {
// Override point for customization after application launch.
let menuController = MenuController()
let navController = UINavigationController(rootViewController: menuController)
navController.navigationBarHidden = true
self.window = UIWindow(frame: UIScreen.mainScreen().bounds)
self.window!.rootViewController = navController
return true
}
我使用此操作进入游戏
func goToGame(sender: UIButton!){
let gameController = GameViewController(nibName: nil, bundle: nil)
self.navigationController.pushViewController(gameController, animated: false)
}
此时我的GameController中的viewWillLayoutSubviews
被多次调用。如果我不在appdelegate
UINavigationController
代码,则不会发生这种情况
如何在保持菜单系统的同时保持游戏风景?