UIView旋转在Swift中无法正常工作

问题描述:

我的UIView应该始终处于全屏状态,但有时并非真正有效。每次用户旋转设备时,都会调用方法viewWillLayoutSubviews
这里我打印UIView的高度和宽度。
UIView的高度和宽度都是正确的(横向模式下1024宽度,768高度)。
无论如何,在iPad上,View并没有这个大小,尽管我把它写入控制台。
在肖像模式下一切正常,但在风景中不是那么可能是什么问题? 如果iPad处于横向模式,并且启动应用程序,但是如果我旋转它(然后是纵向)并将其旋转回风景,则视图不再处于全屏状态。UIView旋转在Swift中无法正常工作

+0

您是否正在执行除界面生成器以外的任何自定义布局,是否正确设置了所有约束? – luk2302

+0

我希望他们是对的。该应用程序是一个相机,并拍摄完美的作品。问题是,当我拍摄视频时,旋转无法正常工作,尽管我以与拍摄照片相同的方式拍摄了 – mafioso

+0

听起来像您的约束没有正确设置。 –

只需将UIView的边缘固定到视图控制器主视图的边缘,constant为0,一旦将UIView添加到界面时,一切都会很好。

+0

好吧,约束是问题,但我设置了一些编程方式,如果我设置建议的约束,我以编程方式设置的那个不正常 – mafioso

+0

@mafioso但是,这不仅仅是一个问题,不知道如何正确应用约束?这很简单,但你必须知道规则。在这一点上,我不知道你在做什么和约束,而你根本没有描述它,所以我不能再进一步。但我确实相信只有我在我的回答中描述的四个约束是解决您的问题的正确方法。 – matt