Изменение заголовка UIBackButtonItem - PullRequest
29 голосов
/ 31 января 2009

У меня есть приложение, основанное на навигационном контроллере. Я хочу изменить название кнопки «Назад» для контроллера корневого представления. Я пробовал следующий код в методе viewDidLoad rootViewController, но безуспешно:

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

Есть идеи?

Ответы [ 14 ]

0 голосов
/ 06 января 2012

У меня есть интересное решение:

В методе, который перемещается ко второму представлению (IBAction или didSelectRaw и т. Д.), Я изменяю заголовок, который я хочу в заголовке заднего элемента, например: self.title = @"Inbox";. Кроме того, я добавляю метод ViewWillApear для изменения заголовка, когда пользователь щелкает обратно к основному заголовку.

0 голосов
/ 06 сентября 2011
self.navigationController.navigationBar.backItem.title = @"TEXT";
0 голосов
/ 01 июня 2010

Это лучшее решение для этого, не устанавливайте заголовок навигационного элемента как обычно self.navigationitem.title. Поместите этот код в родительское представление didload

    CGRect frame = CGRectMake(0, 0, 320, 44);
UILabel *label = [[[UILabel alloc] initWithFrame:frame] autorelease];
label.backgroundColor = [UIColor clearColor];
label.font = [UIFont boldSystemFontOfSize:20.0];
label.shadowColor = [UIColor colorWithWhite:0.0 alpha:0.5];
label.textAlignment = UITextAlignmentCenter;
label.textColor = [UIColor whiteColor];

self.navigationItem.titleView = label;
label.text = @"My Navigation Bar";

При установке заголовка, как указано выше, фактический заголовок навигации будет равен нулю, поэтому заголовок задней панели автоматически будет «Назад»

0 голосов
/ 18 мая 2009

Ваша проблема, вероятно, очень похожа на описанную здесь: http://blog.tmro.net/2009/05/uitabbarbuttonitem-did-not-change-its.html

Попробуйте выполнить отладку, чтобы увидеть, есть ли какие-либо _barButtonItemFlags для вашей кнопки ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...