2016-05-07 5 views
0

Ich versuche, beim Start in der App Delegate zwischen zwei Storyboards entscheiden. Zuerst habe ich den Eintrag NSMainStoryboardFile = Main in der Info.plist entfernt, um das automatische Laden eines Storyboards zu verhindern.Entscheiden Sie zwischen den Storyboards beim Start

Dann habe ich versucht, das Main Storyboard von der AppDelegate zu laden, aber das funktioniert nicht.

@NSApplicationMain 
class AppDelegate: NSObject, NSApplicationDelegate { 


func applicationDidFinishLaunching(aNotification: NSNotification) { 
    let storyboard = NSStoryboard(name: "Main", bundle: nil) 
    storyboard.instantiateInitialController() 
} 

Und ich bin mir nicht sicher warum. Hoffe, dass jemand helfen kann.

Antwort

0
var window: UIWindow? 

func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool 
{ 
    window=UIWindow(frame: UIScreen.mainScreen().bounds) 

    let storyboard = UIStoryboard(name: "Main", bundle: nil) 
    let navigationController:UINavigationController = storyboard.instantiateInitialViewController() as! UINavigationController 
    var rootViewController:UIViewController = storyboard.instantiateViewControllerWithIdentifier("LoginView") // LoginView is your view controller name 

    navigationController.viewControllers = [rootViewController] 
    self.window?.rootViewController = navigationController 
    self.window?.makeKeyAndVisible() 
    window?.backgroundColor=UIColor.blackColor() 

    return true 
} 
0

Dies sollte einwandfrei funktionieren -

func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool 
{ 
    self.window = UIWindow(frame: UIScreen.mainScreen().bounds) 

    var sb = UIStoryboard(name: "Main", bundle: nil) 
    var initialVC = storyboard.instantiateInitialViewController() as! UIViewController 

    self.window?.rootViewController = initialViewController 
    self.window?.makeKeyAndVisible() 
    return true 
} 
Verwandte Themen