2010-03-08 4 views
0

Я нажимаю 2 контроллера вида в стек навигации в ApplicationDidFinishLaunching.Заднее название кнопки, не получающее предыдущее название контроллера управления

[navigationController pushViewController:favorites animated:NO]; 
[navigationController pushViewController:root animated:NO]; 

Приложение загружается нормально, но на начальном экране название кнопки «Назад» просто «Назад». У меня есть заголовок для FavoritesViewController и настройка названия navigationItem для Favorites.

Я что-то упустил?

Цените свою помощь.

+0

Почему вы нажимаете два контроллера вида? Почему бы не включить контроллер навигации с контроллером корневого представления, то есть: initWithRootViewController: и передать свой контроллер избранного в качестве корня? Кроме того, это не обязательно ошибка, но ваше имя запутывает. Если root помещается поверх фаворитов, то это не корень ... Я не думаю, что вы правильно используете контроллер навигации. – Jasarien

+0

Thanks Jasarien, Я просто попробовал это так, как вы предложили, и я получаю тот же результат. Кроме того, если я вернусь к контроллеру view view и вернусь к корню, тогда он отобразит «Избранное» как заголовок. Не уверен, что мне здесь не хватает. Кроме того, что касается именования, вы правы. Я должен изменить это. Раньше у меня не было фаворитов, поэтому это был rootViewController. Мне нужно переименовать контроллеры. Можете ли вы увидеть мою проблему здесь вообще? – Prasanna

ответ

1

Я нашел решение этой проблемы.

Проблема заключалась в том, что при отображении первой страницы страница «Избранное» не запускается, поэтому ее значение названия не отображается. Следующий код добавляет значение заголовка для просмотра контроллера!

NSArray *viewControllerArray = [self.navigationController viewControllers]; 
int parentViewControllerIndex = [viewControllerArray count] - 2; 
[[viewControllerArray objectAtIndex:parentViewControllerIndex] setTitle:@"Favorites"]; 
Смежные вопросы