2016-06-01 25 views
0

Nachdem ich versuche segue von Login-Seite zu Tabbar Controller zu machen, meine app läuft nicht mehrkann NIB nicht in Bündel laden: ‚NSBundle in iOS mit Swift

die Warnung unten.

2016-06-01 18:15:49.255 noonting[62702:982483] *** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Could not load NIB in bundle: 'NSBundle </Users/HK/Library/Developer/CoreSimulator/Devices/F801E079-1231-47D6-B108-0644D7F82931/data/Containers/Bundle/Application/48A07480-11CA-4140-AA53-A405473635C3/noonting.app> (loaded)' with name 'Home' and directory 'Main.storyboardc'' 
*** First throw call stack: 
(
    0 CoreFoundation      0x000000010e6b4d85 __exceptionPreprocess + 165 
    1 libobjc.A.dylib      0x0000000110458deb objc_exception_throw + 48 
    2 CoreFoundation      0x000000010e6b4cbd +[NSException raise:format:] + 205 
    3 UIKit        0x000000010f2a4c89 -[UINib instantiateWithOwner:options:] + 499 
    4 UIKit        0x000000010f61f314 -[UIStoryboard instantiateViewControllerWithIdentifier:] + 181 
    5 UIKit        0x000000010f61f467 -[UIStoryboard instantiateInitialViewController] + 69 
    6 UIKit        0x000000010eedc89f -[UIApplication _loadMainStoryboardFileNamed:bundle:] + 94 
    7 UIKit        0x000000010eedcbcf -[UIApplication _loadMainInterfaceFile] + 260 
    8 UIKit        0x000000010eedb3ef -[UIApplication _runWithMainScene:transitionContext:completion:] + 1392 
    9 UIKit        0x000000010eed8714 -[UIApplication workspaceDidEndTransaction:] + 188 
    10 FrontBoardServices     0x00000001123138c8 __FBSSERIALQUEUE_IS_CALLING_OUT_TO_A_BLOCK__ + 24 
    11 FrontBoardServices     0x0000000112313741 -[FBSSerialQueue _performNext] + 178 
    12 FrontBoardServices     0x0000000112313aca -[FBSSerialQueue _performNextFromRunLoopSource] + 45 
    13 CoreFoundation      0x000000010e5da301 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 17 
    14 CoreFoundation      0x000000010e5d022c __CFRunLoopDoSources0 + 556 
    15 CoreFoundation      0x000000010e5cf6e3 __CFRunLoopRun + 867 
    16 CoreFoundation      0x000000010e5cf0f8 CFRunLoopRunSpecific + 488 
    17 UIKit        0x000000010eed7f21 -[UIApplication _run] + 402 
    18 UIKit        0x000000010eedcf09 UIApplicationMain + 171 
    19 noonting       0x000000010e0f7be2 main + 114 
    20 libdyld.dylib      0x0000000110f2592d start + 1 
    21 ???         0x0000000000000001 0x0 + 1 
) 
libc++abi.dylib: terminating with uncaught exception of type NSException 

Mein erster Versuch Code ist unten. "Home" ist Kennung Tabbar-Controller

self.performSegueWithIdentifier("Home", sender: nil) 

let appDelegate = UIApplication.sharedApplication().delegate! as! AppDelegate 

let initialViewController = self.storyboard!.instantiateViewControllerWithIdentifier("Home") //as! UIViewController 
appDelegate.window?.rootViewController = initialViewController 
appDelegate.window?.makeKeyAndVisible() 

Teil meiner zweiten Versuch Code ist unten:

let storyboard: UIStoryboard = UIStoryboard(name:"Main", bundle: NSBundle.mainBundle()) 
let tabBarController: UITabBarController = storyboard.instantiateViewControllerWithIdentifier("Home") as! UITabBarController 

Antwort

0

Haben Sie zwischen den Seiten segue hergestellt? Hast du die Einstellung identifier auf "Home" gesetzt? Wenn ja, links nur eine Zeile Code, und es wird

self.performSegueWithIdentifier("Home", sender: nil) 

Auf der anderen Seite arbeiten, wenn Sie Ihren Tabbar Steuerungsidentifizierer festgelegt haben (da Sie Storyboard verwenden, ist dies Storyboard ID Feld in Identity Inspektoren Tabbar Controller) Zu "Home" können Sie diesen Code verwenden:

Ihre Protokolle sagt mir, dass Sie diese Kennung nicht festgelegt haben. Verwechsle es nicht mit dem Segmentbezeichner, dies sind andere Dinge und du bevorzugst andere Zeichenketten für sie.