Wie kann ich eine Navigationsleiste schnell vor dem ersten ViewController oder einem bestimmten ViewController ausblenden?
Ich habe den folgenden Code verwendet in viewDidLoad()
:
override func viewDidLoad() {
super.viewDidLoad()
self.navigationController?.isNavigationBarHidden = true
}
und auch auf viewWillAppear
:
override func viewWillAppear(animated: Bool) {
self.navigationController?.isNavigationBarHidden = true
}
Beide Methoden verbergen den Navigationscontroller vor allen ViewControllern.
ios
swift
uinavigationcontroller
uinavigationbar
Aby Mathew
quelle
quelle
Antworten:
Wenn Sie wissen, dass in allen anderen Ansichten die Leiste sichtbar sein sollte, können Sie
viewWillDisappear
sie wieder sichtbar machen.In Swift:
quelle
Swift 3
quelle
self.
nicht benötigt.Sie können sichtbar machen
navigationController
inviewWillDisappear
Swift 3
quelle
Sie können auch eine Erweiterung dafür erstellen, damit Sie die Erweiterung wiederverwenden können, ohne dies in jedem View-Controller immer wieder zu implementieren.
Sie können also die folgenden Erweiterungsmethoden verwenden
quelle
In Swift 3 können Sie die isNavigationBarHidden-Eigenschaft auch zum Ein- oder Ausblenden der Navigationsleiste verwenden
quelle
Möglichkeiten, die Navigationsleiste in Swift anzuzeigen:
quelle
Möglichkeiten, die Navigationsleiste in Swift auszublenden:
quelle
aber nur, wenn es Teil eines UINavigationControllers ist
mach es falsch, wenn du es zurück haben willst
quelle
Ich verwende eine der oben genannten Varianten und isoliere Abschnitte meiner App, um sie in verschiedene NavController einzubetten. Auf diese Weise muss ich die Sichtbarkeit nicht zurücksetzen. Sehr nützlich zum Beispiel in Startsequenzen.
quelle
quelle
Rufen Sie die Set-Hide-Methode in der Ansicht auf. Wird angezeigt und verschwindet. Wenn Sie die angezeigte Methode nicht aufrufen, wird sie mit dem Status false ausgeblendet. Die Navigationsleiste wird in der vollständigen Navigationshierarchie ausgeblendet
quelle
Sie können dies über die Fenstersteuerung (Swift3) tun.
quelle