В одном из моих проектов для ipad левое представление uisplitviewcontroller становится черным. Но когда я поворачиваю iPad, ориентация портретная, левое окно отображается поверх левого окна. Кто-нибудь сталкивался с такой же проблемой?
iPad uisplitviewcontroller левый вид становится черным
Ответы (2)
Я считаю, что проблема в вашей геометрии. Проверьте кадр, который вы установили для левого представления viewControllers.
Надеюсь, это поможет
Я тоже столкнулся с проблемой. Это произошло со мной только тогда, когда я не отклонял UIPopOver в портретном режиме, прежде чем повернуть его в альбомный режим.
Поэтому я отклонил PopOver в методе:
- (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;
}
}
Таким образом, убирая и отпуская объект «ПК», когда я поворачиваюсь, почернение левого вида исчезает.
Все идет нормально. Но я столкнулся с проблемой после вышеуказанного шага:
Вид слева на SplitView немного смещен вниз.
Это происходит только тогда, когда я поворачиваю симулятор iPad с портретного на альбомный, когда UIPopOver уже открыт.
Если я вручную закрою его в портретном режиме, щелкнув за пределами PopOver или щелкнув элемент PopOver
BarButtonItem слева от панели инструментов
, а затем повернув экран
в альбомную ориентацию, я не столкнусь с этим
Проблема. Левый вид
SplitViewController расположен идеально.Любая подсказка, почему это может происходить?