Tengo un controlador de vista modal cuya vista proviene de un XIB. Quiero que tenga la misma apariencia que el resto de mi aplicación basada en la navegación, pero no es una vista que se envía a la pila de navegación, sino que se presenta de forma modal. Arrastré un UINavigationBar y lo convertí en una toma de corriente, pero no tiene una propiedad de título para establecer. Tengo dos campos que pueden mostrar esta vista modal, y quiero que el título se establezca de manera diferente dependiendo de cuál cree la vista modal.Establezca el título de la barra de navegación creada en el generador de interfaz
Respuesta
UINavigationBar
's gestionar una pila de UINavigationItem
s muy similar a un gestor de UINavigationController
una pila de UIViewController
s. Para configurar lo que está visible directamente, debe usar pushNavigationItem:animated:
o setItems:animated:
usando el elemento de navegación del controlador de vista que desea que refleje la barra.
por ejemplo:
self.navigationItem.title = @"A custom title";
[self.navigationBar pushNavigationItem:self.navigationItem animated:NO];
El código anterior en el que tiene una propiedad navigationBar
que hace referencia a la barra de navegación autónomo.
Si no desea administrar usted mismo, puede hacer lo que sugirió mplappert y el controlador de nido de su punto de vista (sin autónomo UINavigationBar
) en un UINavigationController
y presentar el control de navegación de forma modal en lugar de su controlador de vista.
Simplemente coloque su UIViewController
en una nueva pila de controladores de vista UINavigationController
y presente dicho controlador de navegación de forma modal.
También encontré esta forma más fácil si ya ha definido un UINavigationBar en su IB. Suponiendo self.navigationBar es su IBOutlet:
self.navigationBar.topItem.title = title;
(Uso de XCode 4.5.2) Ha encontrado un método que funciona directamente en el Interface Builder - sin poner en código.
Con el objeto ViewController seleccionado en (IB), debajo del Inspector de identidad hay una sección con la etiqueta "Atributos de tiempo de ejecución definidos por el usuario". Agregué el "título" keyPath de tipo String y lo configuré con el valor que quería.
Probado y funciona cuando se lo coloca en una pila de controladores Nav y cuando se abre de forma modal (con un controlador Mo Nav, por supuesto).
¿Cómo localizar este valor? – Arvis
en mi archivo .h
arrastró al niño del elemento de navegación de un guión en el archivo .h
llamó "navigationBarTitle"
en mi archivo .m
- Se agregó self.navigationBarTitle.title = @ "Some Title";
viewcontroller.archivo h en crear IBOutlet del elemento de navegación
@property (weak, nonatomic) IBOutlet UINavigationItem *navigationBarTitle;
- llamó "navigationBarTitle"
en el archivo viewcontroller.m en añadir el código en súper viewDidLoad
self.navigationBarTitle.title = @"Favorites";
conectar el storybord en la navegación barra de elemento a navigationBarTitle.
Aquí es la forma más sencilla:
[[[self.navigationController navigationBar] topItem] setTitle:@"The Title"];
puede utilizar la barra de navegación existente con el código siguiente
self.navigationController?.navigationBar.topItem?.title = "Calender"
- 1. Establezca el título de UINavigationBar
- 2. Ocultar el título de la barra de navegación sin quitarlo
- 3. Cambiar el título de la barra de navegación programáticamente
- 4. Barra de navegación Título Tamaño de fuente
- 5. Configurar el título de una barra de navegación dentro de un controlador de barra de pestañas
- 6. Título de iPhone y subtítulo en la barra de navegación
- 7. Cambio de la barra de navegación Título de UIImagePickerController
- 8. iPhone: configuración de la barra de navegación Título
- 9. Cómo agregar el botón de barra en la barra de navegación sin controlador de navegación.
- 10. iPhone Objective-C: ¿Programativamente cambia el título del elemento de la barra de pestañas en la barra de pestañas creada con IB?
- 11. iOS: cambiar globalmente el color del título de la barra de navegación con apariencia?
- 12. Cambiar el color del título principal de navegación en MFMailComposeViewController
- 13. Establezca el título de una vista de UIPopOver mediante programación
- 14. Cambiar el color de la barra de título en WinForm
- 15. de la barra de título
- 16. CSS - ¿Cómo añadir puntos entre el título de navegación
- 17. ¿Cuándo debería usar el generador de interfaz?
- 18. Títulos que no aparecen en la barra de navegación ViewControllers
- 19. Cómo ocultar la barra de título desde el principio
- 20. Agregar imagen a la barra de navegación
- 21. Bootstrap: llene todo el contenedor debajo de la barra de navegación menos la altura de la barra de navegación
- 22. Ocultar la barra de navegación en el guión gráfico
- 23. ¿Cómo puedo establecer el título para una barra de navegación de UIN programáticamente?
- 24. Arrastre el lienzo en el generador de interfaz
- 25. ¿Cómo establecer el elemento activo en la barra de navegación desplegable de la barra de acciones?
- 26. Cómo deshabilitar el botón derecho de la barra de navegación
- 27. Cambiar el matiz de la barra de navegación utilizando Xcode
- 28. escenario de la barra de navegación en Xcode
- 29. Cambiar el color de la barra de navegación UIDocumentInteractionController
- 30. Android 3.2 quitar el título de la barra de acciones
Esta es la respuesta correcta. – Fengson
Esto funcionó para mí. –
en mi caso: self.navigationController.navigationBar.topItem.title = @ "title" –