El título de la barra de navigation y el nombre del button de retroceso son los mismos?

Creé un título para la barra de navigation en mi proyecto de storyboard, pero cuando me moví al siguiente control de vista, el button Atrás muestra el mismo nombre que mi barra de navigation anterior (título de la barra de navigation principal). ¿Puedo establecer nombres de button de título y de retroceso por separado?

Probé el código siguiente pero no funciona ¿por qué?

self.navigationItem.title=@"Recent Books"; self.navigationItem.backBarButtonItem.title=@"Back"; 

De acuerdo con la reference de class UINavigationItem

"Cuando este elemento de navigation está inmediatamente debajo del elemento superior de la stack, el controller de navigation obtiene el button Atrás de la barra de navigation de este elemento de navigation. […] Si desea especificar una image o título personalizado para el button Atrás , puede asignar un elemento de button de barra personalizado (con su título o image personalizados) a esta propiedad en su lugar. "

Así que intente esto en su primer VC desde donde está presionando a otro VC

 self.navigationItem.title=@"Recent Books"; UIBarButtonItem *backButton = [[UIBarButtonItem alloc] initWithTitle:@"Back" style:UIBarButtonItemStylePlain target:nil action:nil]; self.navigationItem.backBarButtonItem=backButton; 

Digamos que está presionando su control de visión A -> B

En el controller de visión, intente agregar este código en el método viewDidLoad

 UIBarButtonItem *btn_Back = [[UIBarButtonItem alloc] initWithTitle:@"Back" style:UIBarButtonItemStylePlain target:nil action:nil]; self.navigationItem.backBarButtonItem=btn_Back; 

Entonces verá su button "Atrás" en el control de visión B

Lo siguiente debería resolver tu problema

 -(void)viewDidAppear:(BOOL)animated { self.navigationController.navigationBar.backItem.title = @"back"; } 

También puede usar esta syntax Objective-C

 [[self.navigationController.navigationBar backItem] setTitle:@"back"]; 

Solo hazlo de esta manera, una de las forms más sencillas que encontré hasta ahora:

Cree un button de retroceso personalizado y agréguelo a la propiedad del elemento del button izquierdo de la Barra de navigation:

 - (void)viewDidLoad { UIButton *backBtn = [UIButton buttonWithType:UIButtonTypeCustom]; UIImage *backBtnImage = [UIImage imageNamed:@"Backnavigation.png"] ; // Here set the back button image [backBtn setBackgroundImage:backBtnImage forState:UIControlStateNormal]; [backBtn addTarget:self action:@selector(handleBack:) forControlEvents:UIControlEventTouchUpInside]; backBtn.frame = CGRectMake(0, 0, 24, 24); UIBarButtonItem *backButton = [[UIBarButtonItem alloc] initWithCustomView:backBtn] ; self.navigationItem.leftBarButtonItem = backButton; } //Handle the Back Button Event - (void) handleBack:(id)sender { // do your custom handler code here [self.navigationController popViewControllerAnimated:YES]; } 

Además, de esta manera, no es necesario cambiar el título de NavigationBar cada vez.

Aquí está el button Atrás para su reference: introduzca la descripción de la imagen aquí