0

在我的应用程序中,我将所有视图定位在 viewWillLayoutSubviews 中。最近我被要求让应用程序处理所有方向。我认为这很简单,因为我正在使用

CGRect rotatedFrame = [self.view convertRect:self.view.frame fromView:nil];

这将返回与设备当前方向匹配的帧。不幸的是,我发现这并不适用于所有情况。也就是说,如果我呈现一个模态视图控制器,将其旋转为横向然后将其关闭,则父视图控制器“rotatedFrame”不是我所期望的。这导致我的视​​图布局不正确。

有没有办法获得正确的方向框架?

4

1 回答 1

1

我发现我没有使用视图的父级,而是nil使用fromView:它按预期工作的视图。

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

于 2013-06-06T16:35:15.607 回答