2

在视频按钮点击上呈现弹出框:

[self.popOverController presentPopoverFromRect:[self.view convertRect:buttonFrame toView:self.view.window]
                                                inView:self.view.window
                              permittedArrowDirections:UIPopoverArrowDirectionUp
                                              animated:YES];

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

在方向上,我想更改框架位置而不是关闭它并再次呈现它。我怎么能这样做?

4

1 回答 1

0

您可以再次调用 present popover 方法将更改方向方法。

- (void)willRotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration {

    [super willRotateToInterfaceOrientation:toInterfaceOrientation duration:duration];

    [self.popOverController presentPopoverFromRect:[self.view convertRect:buttonFrame toView:self.view.window] inView:self.view.window permittedArrowDirections:UIPopoverArrowDirectionUp animated:YES];
}
于 2013-08-27T07:03:38.103 回答