0

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

-(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 一起移动。如果我关闭弹出框并再次从按钮绘制它,它会在按钮上方正确绘制。只有在弹出弹出框的情况下旋转时才会出现问题。

请尽快帮助。谢谢 :)

4

1 回答 1

0

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

于 2012-07-13T10:31:25.647 回答