使用此代码允许媒体播放器在全屏时横向旋转(应用程序不支持):
// handle orientation for the device
func application (_ application: UIApplication, supportedInterfaceOrientationsFor window: UIWindow?) -> UIInterfaceOrientationMask {
guard let vc = (window?.rootViewController?.presentedViewController) else {
return .portrait
}
if (vc.isKind(of: NSClassFromString("AVFullScreenViewController")!)) || (vc.isKind(of: NSClassFromString("YTPlayerView")!)) {
return .allButUpsideDown
} else {
return .portrait
}
}
在ios 10中工作正常,但由于ios 11屏幕在离开全屏后不会旋转回来,因此不会调整 UI 的大小(旋转后应用程序将只占据屏幕的一半)。似乎对 avkit 进行了一些修改,但我找不到这方面的任何资源,想法?