2016-09-26 2 views
0

Gif of the effectVerzögerung in UINavigationBar Aussehen Wirkung

Hintergrund: meine app Firebase als Backend verwendet, lauscht Zustandsänderungen an den aktuellen Benutzer, und wenn angemeldet, setzt die oben Controller als Root-View-Controller. Es ist ein UITabBarController, das mehrere UINavigationControllers enthält. Lange bevor es präsentiert wird, style ich die Navigationsleiste über UINavigationBar.appearance(). Ich merke zwei Dinge aus dem Ladeverhalten:

  • Der Balken lädt nach dem enthaltenen Inhalt.
  • Sie können die Trennlinie sehen, die von einer nicht formatierten Navigationsleiste erscheinen würde, was zu der Annahme führt, dass die Standarddarstellung eine Art Verzögerung aufweist.

Hat jemand so etwas erlebt? Mein Ziel ist es, den Controller auf einmal vollständig zu laden und im Idealfall die Trennlinie nicht zu sehen.

func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool { 
    Appearance.shared.configure() // All UINavigationBar-related styling 

    window = UIWindow(frame: UIScreen.mainScreen().bounds) 
    window?.backgroundColor = UIColor.whiteColor() 
    window?.rootViewController = UIViewController() 
    window?.makeKeyAndVisible() 

    configureFirebase() // Listens for FIRAuth change, then sets window.rootViewController = MyTabBarController() 
    return true 
} 
+0

Geben Sie einen relevanten Code ein, wie Sie den viewcontroller präsentieren, nachdem sich Benutzer angemeldet haben. – ronan

+0

Hinzugefügt. Ich setze 'window.rootViewController' nur neu, nachdem ich eingeloggt bin. – Connor

Antwort

0

Versuchen Sie UINavigationBar.appearance() Code in das didFinishLaunchingWithOptions Methode Ihrer AppDelegate bewegen.

+1

Das ist, wo der Code momentan ist. – Connor

Verwandte Themen