iPad应用程序,在加载视图时更改弹出窗口尺寸

时间:2014-01-29 12:38:13

标签: ios objective-c ipad popover uipopover

我有一个应用程序,我打算在用户旋转iPad时更改屏幕方向。在我的应用程序中,我有几个popovers。

我担心的潜在问题是我的一个弹出式窗口覆盖了大部分屏幕,因此如果旋转发生变化,我希望弹出窗口可以更改视图尺寸。是否有可能在视图打开时或者我必须关闭它并重新打开它。

由于

1 个答案:

答案 0 :(得分:0)

如果您使用UIPopoverController标准行为,它会在您旋转时隐藏弹出窗口。然后尝试为你重新定位它,这往往不起作用所以你想使用popoverController:willRepositionPopoverToRect:inView设置你的新位置并根据需要调整大小。

如果您使用setPopoverContentSize:animated:它会为您调整大小,如果您使用自动布局,则需要在内容viewController中使用preferredContentSize

Apple Doc

  

如果用户在弹出窗口可见时旋转设备,则弹出窗口   控制器隐藏弹出框,然后在结束时再次显示它   回转。弹出控制器尝试定位弹出窗口   适合你,但你也可以实现   popoverController:willRepositionPopoverToRect:inView:方法中的   popover委托指定一个新职位。