所以我很难尝试让单个UIView处理横向模式和肖像,而应用程序的其余部分只是纵向。我一直在研究这个问题几个小时,我找到的所有解决方案只适用于UIViewControllers而不是UIViews。
到目前为止,我尝试过的只有当我希望能够进入横向和纵向的视图存在时才允许shouldAutorotate
返回true,如下所示:
override var shouldAutorotate: Bool {
// ONLY ROTATE IF MEDIA VIEW IS PRESENT
var boolToReturn = false
// CHECK IF MEDIA VIEW IS PRESENT
if self.view.subviews[self.view.subviews.count - 1] is MediaView {
boolToReturn = true
return boolToReturn
}
return boolToReturn
}
`
MediaView是我需要在肖像和风景中可见的UIView。 MediaView的superview是我的UIViewControllers视图。现在这确实有效;但是,当我的手机旋转到横向并且MediaView不存在时,即使视图没有随其自动旋转,状态栏也会旋转为横向。
所以我的问题是如果MediaView不存在我如何完全禁用横向模式,然后在存在时启用它。任何建议将不胜感激!!