3

在我的应用程序中,我确实有两个 viewController:

VideoListViewController- 仅限肖像

VideoPlayerViewController- 仅限风景

VideoListViewControllerVideoPlayerViewController通过打开self.present(viewController...)

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

override var supportedInterfaceOrientations: UIInterfaceOrientationMask 
{
    return .portrait
}

我的问题是仅纵向视图接收到陆地空间安全区域...在我VideoListViewController.layoutSubviews打印self.safeAreaLayoutGuide.layoutFrame时,它在第一次返回时按预期工作{{0, 44}, {375, 734}}(纵向模式),但是当 VideoPlayer 出现在陆地空间旋转中时,我的纵向视图控制器得到{{44, 0}, {287, 791}}

效果是,旧视图更新会忽略安全区域,并在ViewPlayerViewController消失时自行修复。

有人遇到过这个问题吗?有什么解决方法吗?

4

0 回答 0