¿Sabes cómo ocultar el botón 'atrás' en un UINavigationController? Además, cómo mostrarlo de vuelta, pero supongo que es muy similar a ocultarlo ...
Al igual que la aplicación de correo en el iPhone cuando presionas 'Editar' mientras ves correos electrónicos.
ios
iphone
uinavigationcontroller
Zoran Simic
fuente
fuente
setHidesBackButton:
ANTES de empujar el elemento NavigationItem al control de navegación.viewWillAppear:animated
ocultarlo yviewWillDisappear:animated
restaurarlo.Agregue este código
fuente
Además de eliminar el botón de retroceso (utilizando los métodos ya recomendados), no olvide que el usuario todavía puede 'abrir' la pantalla anterior con un gesto de deslizamiento de izquierda a derecha en iOS 7 y versiones posteriores.
Para deshabilitar eso (cuando corresponda), implemente lo siguiente (en viewDidLoad, por ejemplo):
fuente
Solo para aclarar las respuestas existentes: la
hidesBackButton
propiedad es la respuesta correcta, pero en muchas respuestas no está claro a qué seself
refiere. Básicamente, debe configurarself.navigationItem.hidesBackButton = YES
en el controlador de vista que está a punto de ser empujado (o simplemente empujado) en elUINavigationController
.En otras palabras, digamos que tengo un
UINavigationController
nombremyNavController
. Quiero ponerle una nueva vista, y cuando lo haga, no quiero que se muestre más el botón Atrás. Podría hacer algo como:Cuando finalice el código, la vista controlada por
newVC
ahora debería mostrarse y no debería verse ningún botón de retroceso.fuente
Para ocultar y mostrar el botón Atrás condicionalmente, puede usar el siguiente código:
Nota: en algunos casos, debe ponerlo en el método viewDidAppear en lugar de viewWillAppear, tales como: cuando está actualizando la matriz de la siguiente clase en la clase anterior y luego verificando la condición en la siguiente clase como se indicó anteriormente.
fuente
Swift iOS (he usado lo siguiente)
fuente
sethidesbackbutton no funcionó para mí por alguna razón
Solía de esta manera ->
fuente
Siempre use la documentación de Apple para problemas simples, son más directos y livianos :)
Aquí está la sintaxis para Swift 3.0:
Referencia
https://developer.apple.com/reference/uikit/uinavigationitem#//apple_ref/occ/instm/UINavigationItem/setHidesBackButton:animated:
fuente
En mi caso tuve algunos problemas con las respuestas actuales:
Entonces, la solución que finalmente funcionó para mí es:
fuente
La solución sugerida por Zoran Simic no funcionó para mí por alguna razón.
Sin embargo, este código funcionó:
Obviamente, tendrías que manipular un NSArray a tu gusto para que funcione para ti. Espero que ayude a alguien :)
fuente
En mi subclase UIViewController tengo este método:
fuente
Esto oculta el botón Atrás y lo reemplaza con un botón Agregar en Swift:
fuente
Swift 3.
En general, debe usar la API por ViewController de Apple como se describe muchas veces en esta página, pero a veces necesita el control inmediato del botón Atrás.
El siguiente código oculta el botón Atrás y garantiza que la detección de colisión de golpe no se produzca en la región del botón oculto.
fuente
Esto oculta el botón de retroceso
fuente