当 iPad 旋转时,UIPopovercontroller 不会保持在其位置

Posted

技术标签:

【中文标题】当 iPad 旋转时,UIPopovercontroller 不会保持在其位置【英文标题】:UIPopovercontroller doesnt remain on its position when iPad rotated 【发布时间】:2012-07-13 10:25:06 【问题描述】:

我正在创建一个这样的弹出窗口。

-(void)showPop

    if (self.popoverController2 == nil) 


        RootViewController *iap = 
        [[RootViewController alloc]initWithNibName:@"RootViewController" bundle:[NSBundle mainBundle]];
        [iap setDelegate:self];


        UIPopoverController *popover = 
        [[UIPopoverController alloc] initWithContentViewController:iap]; 

        popover.delegate = self;

        popover.popoverContentSize = CGSizeMake(320, 300);  

        self.popoverController2 = popover;


    


    CGRect popoverRect = [self.view convertRect:[shopButton frame] fromView:[shopButton superview]];


    [self.popoverController2 presentPopoverFromRect:shopButton.bounds inView:shopButton 
                           permittedArrowDirections:UIPopoverArrowDirectionAny 
                                           animated:YES];



ShopButton 是弹出弹出框的按钮。现在的问题是,当我旋转我的设备时,弹出框保持在它绘制的位置,而视图的其余部分会根据旋转进行调整。简而言之,当设备旋转并绘制弹出框(从 UIButton 弹出)时,弹出框不会随 UIButton 一起移动。如果我关闭弹出框并再次从按钮中绘制它,它会在按钮上方正确绘制。只有在弹出弹出框的情况下旋转时才会出现问题。

请尽快提供帮助。 谢谢你:)

【问题讨论】:

【参考方案1】:

您可以在方向改变之前隐藏弹出框,然后立即使用新坐标再次显示它。

【讨论】:

以上是关于当 iPad 旋转时,UIPopovercontroller 不会保持在其位置的主要内容,如果未能解决你的问题,请参考以下文章

当 iPad 旋转时,ActionSheet 的 PopoverController 不会停留在窗口的中心

当模态视图可见且 iPad 旋转时,UIPopover 的内容会更改为随机方向

iPad 视图旋转问题

将 ipad 从纵向旋转到横向时,Div 保持相同的宽度

旋转 ipad 屏幕时同时调用滚动功能

ipad 应用程序 - 方向旋转性能很差