Панель навигации не отображается вверху страницы. В чем дело? - PullRequest
1 голос
/ 21 апреля 2010

У меня возникла простая проблема. Я объявляю контроллер навигации, но появившаяся панель навигации не отображается вверху страницы.

http://sphotos.ak.fbcdn.net/hphotos-ak-snc3/hs410.snc3/24784_889732028002_28110599_54506042_4580563_n.jpg

Я объявляю навигационный контроллер таким ...

UINavigationController * navController = [[UINavigationController alloc] initWithRootViewController: setupViewController];

[self.view addSubview: navController.view];

Есть идеи?

Ответы [ 2 ]

1 голос
/ 21 апреля 2010

Марк прав, говоря, что вы не должны добавлять представление контроллера навигации как подпредставление к вашему представлению. Фактически иерархия должна быть создана таким образом, чтобы ваш контроллер представления был корневым контроллером представления в вашем контроллере навигации.

Иерархия контроллеров представления обычно строится как: окно -> контроллер панели вкладок -> контроллер навигации -> просмотр контроллера.

Контроллер панели вкладок и контроллер навигации определенно не являются обязательными.

Вы можете выдвигать и извлекать контроллеры представления из контроллера навигации с помощью методов pushViewController: animated и popViewController: animated.

0 голосов
/ 21 апреля 2010

Вы не должны действительно добавлять NavigationController в качестве подпредставления к представлению, подобному этому. Это полностью побеждает цель. Вам нужно создать свой UINavigationController, используя initWithRootViewController, а затем показать его. Попробуйте что-то вроде:

UINavigationController *controller = [[UINavigationController alloc]initWithRootViewController:setupViewController];
[self presentModalViewController:controller animated:YES];
[controller release];

(может потребоваться self.navigationController или что-то еще в строке presentModalViewController, в зависимости от того, что означает «self»)

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