2016-10-21 6 views
-1

Ich frage mich, ob es OK von iOS Human Interface Guidelines zu einem UIView style, so dass es aussieht und wirkt wie eine Navbar.Ausblenden Navigationsleiste auf Bildlauf

Mein Problem ist, dass ich meine aktuelle navbar verstecken möchte, sobald der Benutzer scrollt. Ich habe versucht, beide self.navigationController?.setNavigationBarHidden(true, animated: true) und navigationController?.hidesBarsOnSwipe = true aber die Animation sieht seltsam aus, wenn die Navigationsleiste versteckt wird ich noch über 20px Raum unter der Statusleiste haben: Sie meine anderen question

So die Dinge einfacher aussehen kann, kann ich nur meine Sicht auf die Navbar versteckten und style meine eigenen und fügen Sie die richtige Animation?

+0

Ja, das ist völlig in Ordnung. Stellen Sie nur sicher, dass das Verhalten für iOS-Benutzer nicht unvorhersehbar ist. – alexburtnik

+0

erstellen Sie einfach die Ansicht, die aussieht wie Navbar & dann Perfome verstecken und zeigen. Und verstecken Sie die ursprüngliche Navigationsleiste. –

+0

versuchen http://stackoverflow.com/questions/40019359/hiding-navigation-bar-with-self-navigationcontroller-hidesbarsonswipe-true-hi/40020151#40020151 – suhit

Antwort

0

Probieren Sie dies aus:

extension YourViewController { 
    override func prefersStatusBarHidden() -> Bool { 
     return barsHidden // Custom property 
    } 

    override func preferredStatusBarUpdateAnimation() -> UIStatusBarAnimation { 
     return .Slide 
    } 
} 

Sie haben barsHidden irgendwo im Code und rufen setNeedsStatusBarAppearanceUpdate() -Methode zu aktualisieren.

Verwandte Themen