2012-04-12 15 views
7

he creado un controlador de navegación mediante programación,escenario de la barra de navegación en Xcode

 //Creating AddViewController Object 
     addViewController *addView = [[addViewController alloc]init]; 
     UINavigationController *addViewControl = [[UINavigationController alloc]init]; 

     [addViewControl.view addSubview:addView.view]; 

     [self presentModalViewController:addViewControl animated:YES]; 

Pero cuando agrego self.title = @ "Título" en la clase addViewController. no está mostrando.

he intentado con lo siguiente,

self.navigationItem.title = @"Title"; 

self.navigationController.navigationBar.topItem.title = @"Title"; 

pero no es aparece título.

Creo que es posible hacerlo estableciendo una etiqueta. pero el de arriba es un método directo.

Cualquier Idea ..

+1

La pregunta es CUÁNDO está estableciendo ese título. Tiene que hacerse dentro o antes de que se llame aWillAppear en ese ViewController recién visualizable. – Till

+0

Estoy con @Till - de Apple Docs - "Use el método initWithTitle: para crear una ítem de navegación que especifique el título del ítem. El ítem no puede ser representado en la barra de navegación sin un título". es decir, necesita establecer primero – AnthonyBlake

+0

@Anthony: no estoy usando ningún archivo xib para establecer el título y el nombre de la pluma. – Anish

Respuesta

5

Trate inicializar el controlador de navegación de esta manera:

UINavigationController *addViewControl = [[UINavigationController alloc] initWithRootViewController:addView]; 
[self presentModalViewController:addViewControl animated:YES]; 
//[addView release]; 
//[addViewControl release]; // uncomment these two lines if not using ARC 

Y luego configure la propiedad title de su addViewController clase en el método viewWillAppear.

+0

funcionó ... Gracias Alexander – Anish

14

Debe asignar el título a la addView como addView.title = @"Title";

Otra manera de hacerlo es self.navigationItem.title = @"Title";

+0

Este no funciona – Anish

+1

Gracias, esto funcionó para mí. – James

0

Su controlador de navegación no está correctamente configurado:

UINavigationController *addViewControl = [[UINavigationController alloc]initWithRootViewController:addView]; 
// delete this line: [addViewControl.view addSubview:addView.view]; 
+0

Gracias felix. Dejame revisar – Anish

6

Esto parece funcionar bien para mí

self.navigationController.navigationBar.topItem.title = @"Title"; 
0

esto está funcionando en una aplicación que estoy creando:

[self.navigationItem setTitle:@"title here"]; 
Cuestiones relacionadas