Полноэкранный модальный iPad для просмотра через TabBarController? - PullRequest
3 голосов
/ 05 мая 2011

В приложении для iPad на основе TabBar, есть ли способ представить модальное поверх него в «FullScreen»?

У меня есть приложение ТОЛЬКО ЛАНДШАФТ (если это имеет значение) и элемент, который я хочу в настоящее время представить модально, я хотел бы представить в полноэкранном режиме, заполняя весь экран только для пояснения. Я могу представить его в «PageSheet» хорошо, и «FormSheet» все в порядке, после нескольких настроек кнопок на кончике модального представления, но как только я пытаюсь «FullScreen», фон становится белым (хотя TabBar все еще там), и если я попытаюсь нажать кнопку (без перезапуска симулятора), он не будет отвечать.

Вид, в котором расположена кнопка для представления модального вида, - CountryViewController.m и имеет действие:

-(IBAction) showNewModal:(id)sender {
modalContent.modalTransitionStyle = UIModalTransitionStyleCrossDissolve;
modalContent.modalPresentationStyle = UIModalPresentationFullScreen;
[self presentModalViewController:modalContent animated:YES];
}

Этот код прекрасно работает без TabBar, я понял. Я часами искал что-то, что можно было бы добавить в этот код или даже в файлы AppDelegate.h и .m, но до сих пор он либо не отвечает (как ни странно, но не выдает ошибку), либо вышеупомянутым пробелом.

1 Ответ

6 голосов
/ 13 июля 2011

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

[self.tabBarController presentModalViewController:modalContent animated:YES];

должно работать

Если вы работаете с iOS 4, то (возможно) варианты выбора лучше использовать:

[[UIApplication sharedApplication].keyWindow.rootViewController presentModalViewController:modalContent animated:YES];
...