Dies ist eine beliebte Frage, aber ich konnte keine Lösung finden, die 2. auf Swift arbeiteteSwift 2: Bildschirm-Rotation nur auf Vollbild-Video
Die App ist Portrait nur. Wenn Sie Vollbildvideos wie YouTube ansehen, sollten sich die Nutzer jedoch in die Landschaft drehen können.
auf Objective C, war dies die einfachste Lösung, und ich für eine lange Zeit verwendet:
AppDelegate file:
static NSString * const VIDEO_CONTROLLER_CLASS_NAME_IOS7 = @"MPInlineVideoFullscreenViewController";
static NSString * const VIDEO_CONTROLLER_CLASS_NAME_IOS8 = @"AVFullScreenViewController";
- (UIInterfaceOrientationMask)application:(UIApplication *)application supportedInterfaceOrientationsForWindow:(UIWindow *)window{
if ([[window.rootViewController presentedViewController] isKindOfClass:NSClassFromString(VIDEO_CONTROLLER_CLASS_NAME_IOS7)] ||
[[window.rootViewController presentedViewController] isKindOfClass:NSClassFromString(VIDEO_CONTROLLER_CLASS_NAME_IOS8)]) {
return UIInterfaceOrientationMaskAllButUpsideDown;
} else {
return UIInterfaceOrientationMaskPortrait;
}
}
Diese alle Ausrichtungen ermöglicht, während das Video auf Vollbild ist. Ansonsten nur Portrait.
Aber ich habe eine harte Zeit, diese Arbeit auf Swift zu machen. Ist es möglich, den Bildschirm zu drehen, wenn Vollbildvideos auf Swift abgespielt werden?
iOS 8 nicht dreht, sondern funktioniert auf iOS 9. Dank! – tomDev
Um sicherzustellen, dass die App zum Hochformat zurückkehrt, verwenden Sie besser "supportedInterfaceOrientations" anstelle von "supportedInterfaceOrientationsForWindow". Auf diese Weise wird die Ausrichtung beim Beenden des Videos automatisch auf Hochformat zurückgesetzt. – tomDev
Danke, das war ein Nebenprodukt von rauschen und Autocomplete verwenden ... Froh, dass es funktioniert hat. – JAL