Oigan todos. Todavía soy bastante nuevo en el desarrollo de iPhone y tengo algunos problemas para averiguar cómo cambiar el título de mi barra de navegación. En otra pregunta de este sitio, alguien recomendó usar:
viewController.title = @"title text";
pero eso no me funciona ... ¿Necesito agregar un UINavigationController para lograr esto? ¿O tal vez solo una salida de mi subclase UIViewController? Si ayuda, definí la barra de navegación en IB y estoy tratando de establecer su título en mi subclase UIViewController. Esta es otra de esas cosas simples que me dan dolor de cabeza. Poniendo self.title = @ "texto del título"; en viewDidLoad
y initWithNibName
tampoco funcionaba. ¿Alguien sabe lo que está pasando y cómo hacer que suceda, verdad?
¡Gracias!
fuente
si lo está haciendo todo por código en el
viewDidLoad
método delUIViewController
, solo debe agregarself.title = @"title text";
algo como esto:
- (void)viewDidLoad { [super viewDidLoad]; self.title = @"title"; }
también podrías intentar
self.navigationItem.title = @"title";
También verifique si su navigationItem no es nulo y si ha configurado un fondo personalizado para la barra de navegación, verifique si el título está configurado sin él.
fuente
Hay un problema con el uso
self.title = @"title";
Si está utilizando la barra de navegación junto con la barra de pestañas, la línea anterior también cambia la etiqueta del elemento de la barra de pestañas. Para evitar esto, use lo que sugirió @testing
self.navigationItem.title = @"MyTitle";
fuente
Si desea cambiar el título de la barra de navegación (¡no el título del botón de retroceso de la barra de navegación!), Este código funcionará.
self.navigationController.topViewController.title = @"info";
fuente
Si desea cambiar el título de un navBar dentro de un controlador tabBar, haga esto:
-(void)viewDidAppear:(BOOL)animated { self.navigationController.navigationBar.topItem.title = @"myTitle"; }
fuente
En mi aplicación basada en navegación, hago esto:
myViewController.navigationItem.title = @"MyTitle";
fuente
Tenía controladores de navegación integrados en un TabbarController. Esto funcionó
self.navigationItem.title=@"title";
fuente
De forma predeterminada, el controlador de navegación muestra el título del 'elemento superior'
entonces en su método viewdidload de su appdelegate puede. Lo probé y funciona
navController.navigationBar.topItem.title = @"Test";
fuente
UINavigationItem* item = [[UINavigationItem alloc] initWithTitle:@"title text"]; ... [bar pushNavigationItem:item animated:YES]; [item release];
Este código funcionó.
fuente
Si está trabajando con Storyboards, puede hacer clic en el controlador, cambiar a la pestaña de propiedades y establecer allí el texto del título.
fuente
Supongo que necesitas un título dinámico, por eso no lo configuras en IB.
¿Y supongo que su objeto viewController es el especificado en el NIB?
Tal vez intente establecerlo en un valor ficticio en IB y luego depure los métodos para ver qué controlador tiene el valor ficticio, asumiendo que aparece como el título ...
fuente
Desde dentro de su TableViewController.m:
fuente
Para todos sus Swift-ers, esto funcionó perfectamente para mí. Es notablemente una de las formas más cortas de lograr establecer el título, también:
override public func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) { if segue.identifier == "presentLineItem" { print("Setting Title") var vc = segue.destinationViewController as! LineItemsTableViewController vc.navigationItem.title = "Line Item" } }
fuente