Как мне нажать UIVIewController на modalViewController? - PullRequest
0 голосов
/ 22 ноября 2011

У меня есть вкладка + навигационное приложение. Я вызываю filterModalController:

[self.navigationController presentModalViewController:filterModalController animated:YES];

Все в порядке. Тогда я хочу нажать officeController.

[self.navigationController pushViewController:officeController animated:YES];

Но officeController не появился. Что не так?

1 Ответ

1 голос
/ 22 ноября 2011

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

[self.navigationController dismissModalViewControllerAnimated:YES];

, прежде чем нажимать officeViewController.

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

UINavigationController*  filterNavController = [[UINavigationController alloc] 
                            initWithRootViewController:filterModalController];

// Display the nav controller modally.
[self presentModalViewController:filterNavController animated:YES];

[locationNavController release];

Тогда filterNavController может нажать officeController.

...