0

Я разрабатываю приложение iPad на основе представления. Это простое приложение на основе представления, в котором первое загруженное представление содержит одну кнопку. Нажав на эту кнопку, я создаю SplitViewController который содержит два UINavigationControllers (один мастер и другие детали) после этого, я удаляю текущий вид (первый вид) и добавляет представление splitViewController к окну. Мастер содержит кнопку в виде элемента панели (кнопка «Главная»), которая делает удаление представления SplitViewController и добавление первого окна в окно. Если я запускаю свое приложение в ландшафтном режиме, он отлично работает. Но если я запустил приложение в портретном режиме и нажал кнопку «Домой» (на навигационной панели мастера), он не дойдет до первого представления и отобразит следующую ошибку. ошибка также возникает, если я изменяю свою ориентацию от Portrait to Landscape, если я запустил приложение в режиме Portrait.Сплит сбой в портретном режиме в приложении, основанном на представлении

2012-05-18 19:12:52.796 test_Project[3703:f803] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[UIPopoverController presentPopoverFromRect:inView:permittedArrowDirections:animated:]: Popovers cannot be presented from a view which does not have a window.' 

ответ

0

Наконец-то я получил свой ответ сам. В приложении, основанном на представлении, когда используется popover, поэтому, возвращаясь из разделенного вида для просмотра, сначала откройте этот popover (скрыть), а затем удалите разделенный вид.

0

Для представления родительского представления popover должен иметь действительный фрейм. Поэтому попробуйте проверить, устанавливаете ли вы кадр для родительского представления после добавления popover.