2010-09-15 67 views
4

我正在切换窗口内的视图。方向有时会混淆。UIPopoverController在错误位置显示

在窗口之一,当我尝试显示应被附着到工具栏按钮一个酥料饼,它显示在屏幕上的位置。如果我在物理上更改设备的方向,则弹出窗口会在正确的位置重新绘制。如果我再次将它切换回来,它将被绘制在正确的位置。如果我忽略弹出窗口并尝试再次显示它,它将再次显示在错误的位置。

建议感激。

+0

在这里,当你从视图中显示酥料饼的控制器,你首先需要检查哪些orinetation你现在有和基于取向可以选择框,并从当前视图中打开酥料饼的控制器。你可以像如下:if(UIAppDelegate.intOrientation == 1) [self.popoverController presentPopoverFromRect:CGRectMake(100150570720)inView:self.view permittedArrowDirections:否动画:YES]; else [self.popoverController presentPopoverFromRect:CGRectMake(102,135,820,500)inView:self.view allowedArrowDirections:NO animated:YES]; – AppAspect 2011-06-20 18:00:59

回答

1

在这里,当你从视图中显示酥料饼的控制器,首先你需要检查哪些orinetation你现在有和基于取向可以选择框,并从当前视图中打开酥料饼的控制器。你可以这样做:

if(UIAppDelegate.intOrientation == 1) 
    { 
     popoverController.popoverContentSize = CGSizeMake(570, 720); 
     [self.popoverController presentPopoverFromRect:CGRectMake(100, 150, 570, 720) inView:self.view permittedArrowDirections:NO animated:YES]; 
    } 
    else 
    { 
     popoverController.popoverContentSize = CGSizeMake(820, 500); 
     [self.popoverController presentPopoverFromRect:CGRectMake(102, 135, 820, 500) inView:self.view permittedArrowDirections:NO animated:YES]; 
    } 
1

问题消失了,不知道为什么。我曾在Apple开发者支持方面提出过一个问题。他们浏览了我的代码,并提出了一些未公开的指导方针。

一个是不是正在切换视图之间混合的屏幕方向。让他们都一贯支持风景或不,肖像或不。

他们还表示,只有一个控制器应在同一时间内管理的画面。

这个问题与iPad上的iOS4.2一起提出。不知道这是否适用。