2016-03-14 79 views
1

我的应用只支持纵向模式,但对于我在UIWebView中以全屏方式播放的视频也应该支持横向模式。我搜索了很多内容并找到了一些答案,例如添加了我不想做的通知因为其他的东西,第二,我发现工作有很多的通知是这样的代码:只适用于视频的横向模式

func application(application: UIApplication, supportedInterfaceOrientationsForWindow window: UIWindow?) -> UIInterfaceOrientationMask { 

    var classesToCheckFor = [AnyClass]() 

    if let ios7Class = NSClassFromString("MPInlineVideoFullscreenViewController") { 
     classesToCheckFor.append(ios7Class) 
    } 

    if let ios8Class = NSClassFromString("AVFullScreenViewController") { 
     classesToCheckFor.append(ios8Class) 
    } 

    for classToCheckFor in classesToCheckFor { 
     if (self.window?.rootViewController?.presentedViewController?.isKindOfClass(classToCheckFor) != nil) { 
      return .AllButUpsideDown 
     } 
    } 

    return .Portrait 
} 

它在iOS的9,但不是在iOS的8.Anyone知道如何为iOS 8

做工作正常

或者有没有其他方法可以做到这一点?

回答

0

我得到了解决办法只是删除关键字self,并在这两个IOS 8和iOS的罚款9.Change代码

func application(application: UIApplication, supportedInterfaceOrientationsForWindow window: UIWindow?) -> UIInterfaceOrientationMask { 

    var classesToCheckFor = [AnyClass]() 

    if let ios7Class = NSClassFromString("MPInlineVideoFullscreenViewController") { 
     classesToCheckFor.append(ios7Class) 
    } 

    if let ios8Class = NSClassFromString("AVFullScreenViewController") { 
     classesToCheckFor.append(ios8Class) 
    } 

    for classToCheckFor in classesToCheckFor { 
     if (window?.rootViewController?.presentedViewController?.isKindOfClass(classToCheckFor) != nil) { 
      return .AllButUpsideDown 
     } 
    } 

    return .Portrait 
} 
相关问题