2010-02-16 14 views
13

¿Cómo desactivo el botón de retroceso en un controlador de navegación?Deshabilitar el botón de barra de navegación Navigationitem

Cuando oculto el botón como tal, self.navigationItem.hidesBackButton = TRUE; el buttonarea todavía se puede tocar.

+0

Suena como un error. ¡Archive un informe de error! http://bugreport.apple.com –

+0

Voy a presentar eso. Pensé que podría tener algo que ver con establecerlo en TRUE, pero lo mismo sucedió con establecer SÍ. – Glenn

+0

VERDADERO y SÍ debería ser el mismo :) '#define SÍ (BOOL) 1' ' #define NO (BOOL) 0' –

Respuesta

30

Si no necesita un botón de retroceso y como parte de la existencia de navigationBar es tener un botón de retroceso, simplemente puede ocultar el navBar. Puedo publicar el código para eso si quieres, ya que estoy haciendo eso en un par de proyectos. De lo contrario, su "error" podría no ser un error si lo está llamando desde el lugar equivocado. Después de excavar logré llegar a esto. Para ocultar la parte posterior utilización botón:

self.navigationItem.hidesBackButton = YES; 

Para ocultar todo el uso navigationbar:

self.navigationController.navigationBarHidden = YES; 

Pero esto sucederá sin animación, para animar que usan este lugar:

[self.navigationController setNavigationBarHidden:YES animated:YES]; 

Esto hará una animación deslizante junto con la vista de navegación. Tendrá que proporcionar otros medios para que la persona regrese.

+0

Lo bueno de ocultar el navBar es que una vez que haya terminado de analizarlo puede mostrarlo con animación y obtendrá una buena animación deslizante desde la parte superior =) –

Cuestiones relacionadas