Вид слева от uisplitviewcontroller для iPad становится помехой

#ipad

#iPad

Вопрос:

В одном из моих проектов для ipad вид слева от uisplitviewcontroller становится черным. Но когда я поворачиваю iPad, ориентация книжная, левое окно отображается поверх левого winodw, Кто-нибудь сталкивался с такой же проблемой?

Ответ №1:

Я считаю, что проблема в вашей геометрии. Проверьте рамку, которую вы установили для вашего представления left ViewControllers.

Надеюсь, это поможет

Ответ №2:

Я тоже столкнулся с проблемой. Это случилось со мной только тогда, когда я не отключал UIPopover в режиме Potrait, прежде чем перевести его в альбомный режим.

Итак, я отклонил всплывающее окно в методе:

 - (void)splitViewController: (UISplitViewController*)svc willShowViewController:(UIViewController *)aViewController invalidatingBarButtonItem:(UIBarButtonItem *)barButtonItem {

if(defaultview)
defaultview.navigationItem.leftBarButtonItem=nil;

if (pc) {
    [self dismissPopup];
}
  

}

И добавил метод в мой DetailedViewController (тот же контроллер просмотра, у которого был вышеупомянутый метод UIPopOverDControllerDelegate)

 -(void) dismissPopup{
if(pc)
{
    [pc dismissPopoverAnimated:YES];
    [pc release];
    pc = nil;
    isPopOverClosed = YES;
}   
  

}

Таким образом, отклоняя и освобождая объект «pc», при повороте затемнение левого вида исчезает.

Пока все хорошо. Но я сталкиваюсь с проблемой после вышеуказанного шага:

Вид слева от SplitView немного смещен вниз.

  • Это происходит только тогда, когда я поворачиваю симулятор iPad из Potrait в Landscape, когда UIPopover уже открыт.

  • Если я вручную закрою его в режиме просмотра, щелкнув вне всплывающего окна или щелкнув всплывающий
    элемент BarButtonItem в левой части
    панели инструментов, а затем поверну экран
    в альбомную ориентацию, я не столкнусь с этой
    проблемой.Вид слева
    splitViewController расположен идеально.

    Есть какие-либо подсказки, почему это может происходить?

Комментарии:

1. Вы, вероятно, получите лучший ответ, если это его собственный вопрос.