2010-08-25 4 views
0

Я столкнулся с очень тонкой проблемой.Кнопка «Назад» не отображается в navigationItem

Обычно все в порядке, но иногда текущий UIviewController не имеет названия. Когда я вызываю другой контроллер просмотра, вызванный через

[[fruitDB navigationController] pushViewController:fruitc animated:YES]; 

нет кнопки «назад». Область в левом верхнем углу навигационной панели все еще активна, и я могу вернуться назад.

Как я могу убедиться, что кнопка «Назад» все еще активна, даже если нет названия?

ответ

0

Перед тем, как вы нажмете следующий контроллер вида, почему бы вам не попробовать: self.title = @"Back"; ??

+0

Когда вы вернетесь, заголовок неправильный. –

+0

затем добавьте в «viewWillAppear» 'self.title = @" ";' –

+0

Проблема этого метода в том, что вы можете видеть измененный заголовок во время перехода ... – Vadim

1

вы можете установить backBarButtonItem элемента навигации контроллера вида.

В частности, где-то в viewController1 до нажатия viewController2, сделайте следующее ...

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

Когда вы нажимаете viewController2, кнопку назад, показанный будет backBarButtonItem из viewController1.

Примечание: Технически яблоко рекомендует переопределить метод navigationItem в вашем контроллере вида и добавить туда кнопки, но это действительно не проблема в вашем случае.

Смежные вопросы