safeAreaLayoutGuide在阻止轮播时返回错误的值

时间:2017-10-25 13:09:06

标签: ios autolayout ios11 iphone-x safearealayoutguide

在我的应用程序中,我有两个viewControllers:

VideoListViewController - 仅限肖像

VideoPlayerViewController - 仅限风景

VideoListViewController通过VideoPlayerViewController

打开self.present(viewController...)

我通过以下方式阻止方向:

override var supportedInterfaceOrientations: UIInterfaceOrientationMask 
{
    return .portrait
}

我的问题是只限纵向视图接收到了空间安全区域...... 在VideoListViewController.layoutSubviews我打印self.safeAreaLayoutGuide.layoutFrame并且它首先返回{{0, 44}, {375, 734}}(纵向模式)时按预期工作,但是当VideoPlayer出现在landpace旋转时,我的仅限肖像的viewController获得{{1} }}

效果是,稍微时刻旧视图更新忽略安全区域,并在{{44, 0}, {287, 791}}消失时自行修复。

有人有这个问题吗?有没有解决方法呢?

0 个答案:

没有答案