2017-06-20 55 views
0

有没有人可以帮助我解释如何以swif编程方式制作UISpliterController。在我的应用程序中,我想要应用iphone设备和ipad的支持功能。如果应用程序在iphone上运行,那么使用单个控制器,但是如果应用程序在ipad上运行,则使用带有现有ViewController的UISpliterController。如何在swift中以编程方式创建UISplitViewController

我试过了,但总是会产生黑屏 这是我的代码。

if UIDevice.current.userInterfaceIdiom == .pad { 

    let spliterVC = UISplitViewController() 
    let homeNavControler = mainStoryboard.instantiateViewController(withIdentifier: "homeViewController") as! HomeViewController 

    let secondVC = mainStoryboard.instantiateViewController(withIdentifier: "secondViewController") as! SecondViewController 
    spliterVC.viewControllers = [homeNavControler,secondVC] 
    appdelegate.window?.rootViewController = spliterVC 
} 

回答

2

如果你想与navigationController做到这一点,那就试试吧:

func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: NSDictionary?) -> Bool { 
    if UIDevice.current.userInterfaceIdiom == .pad { 
     self.window = UIWindow(frame: UIScreen.mainScreen().bounds) 
     self.window!.backgroundColor = UIColor.whiteColor() 
     var splitViewController = UISplitViewController() 
     var homeViewController = HomeViewController() 
     var secondViewController = SecondViewController() 
     var homeNavigationController = UINavigationController(rootViewController:homeViewController) 
     var secondNavigationController = UINavigationController(rootViewController:secondViewController) 
     splitViewController.viewControllers = [homeNavigationController,secondNavigationController] 
     self.window!.rootViewController = splitViewController 
     self.window!.makeKeyAndVisible() 
     return true 
    } else { 
     // use single controller for iPhone and return that controller 
    } 
} 
+0

确定..感谢兄弟 – user7845351

相关问题