¿Cómo puedo ocultar una barra de navegación desde el primer ViewController o un ViewController particular en Swift?
Usé el siguiente código en viewDidLoad()
:
override func viewDidLoad() {
super.viewDidLoad()
self.navigationController?.isNavigationBarHidden = true
}
y también en viewWillAppear
:
override func viewWillAppear(animated: Bool) {
self.navigationController?.isNavigationBarHidden = true
}
Ambos métodos ocultan el controlador de navegación de todos los ViewControllers.
ios
swift
uinavigationcontroller
uinavigationbar
Aby Mathew
fuente
fuente
Respuestas:
Si sabe que todas las demás vistas deben tener la barra visible, puede usarla
viewWillDisappear
para volverla a ver.En Swift:
fuente
Swift 3
fuente
self.
no es necesario.Usted podrá mostrar
navigationController
enviewWillDisappear
Swift 3
fuente
También puede crear una extensión para esto para poder reutilizar la extensión sin implementar esto una y otra vez en cada controlador de vista.
Entonces puede usar los métodos de extensión como se muestra a continuación
fuente
En Swift 3, puede usar la propiedad isNavigationBarHidden también para mostrar u ocultar la barra de navegación
fuente
Formas de mostrar la barra de navegación en Swift:
fuente
Formas de ocultar la barra de navegación en Swift:
fuente
pero solo cuando es parte de un UINavigationController
hazlo falso cuando lo quieras de vuelta
fuente
Utilizo una variante de lo anterior, y aíslo secciones de mi aplicación para integrarlas en diferentes NavControllers. De esta manera, no tengo que restablecer la visibilidad. Muy útil en secuencias de inicio, por ejemplo.
fuente
fuente
Llame al método oculto establecido a la vista Aparecerá y desaparecerá. si no llama al método a la vista, desaparecerá con el estado falso. Ocultará la barra de navegación en la jerarquía de navegación completa
fuente
Puedes hacerlo desde el controlador de ventana (Swift3)
fuente