Ios Can';t在iPad上播放YouTubePlayer视图

Ios Can';t在iPad上播放YouTubePlayer视图,ios,swift,youtube,splitview,Ios,Swift,Youtube,Splitview,我使用SplitViewController和Swift YouTube播放器在应用程序中播放YouTube视频。它在iPhone上运行得很好,但在iPad上不起作用 在iPhone上,当我触发播放器时,它会打开MPMoviewPLayer全屏播放视频,但在iPad上,它会在后台播放,我想,我可以控制视频的声音,但视频不会出现 我找不到解决办法。你有什么建议为什么玩家在splitviewcontroller下玩 这是触发代码 timer = NSTimer.scheduledTi

我使用SplitViewController和Swift YouTube播放器在应用程序中播放YouTube视频。它在iPhone上运行得很好,但在iPad上不起作用

在iPhone上,当我触发播放器时,它会打开MPMoviewPLayer全屏播放视频,但在iPad上,它会在后台播放,我想,我可以控制视频的声音,但视频不会出现

我找不到解决办法。你有什么建议为什么玩家在splitviewcontroller下玩

这是触发代码

        timer = NSTimer.scheduledTimerWithTimeInterval(4, target: self, selector: "alertVideo", userInfo: nil, repeats: false)
        NSNotificationCenter.defaultCenter().addObserver(self, selector: "doneButton",  name: UIWindowDidBecomeHiddenNotification, object:nil)
        NSNotificationCenter.defaultCenter().addObserver(self, selector: "startVideo",  name: UIWindowDidBecomeVisibleNotification , object:nil)
        let a = MBProgressHUD.showHUDAddedTo(self.view, animated: true)
        a.dimBackground = true
        collectionView.deselectItemAtIndexPath(indexPath, animated: true)
        let cell = collectionView.cellForItemAtIndexPath(indexPath)
        let circleView : YouTubePlayerView? = (cell!.contentView.viewWithTag(10)) as? YouTubePlayerView

        circleView?.play()
这是我使用的YouTubePLayer: 解决了这个问题

我用电脑换了图书馆。我持有玩家的实例并展示:

let youtube : YKYouTubeVideo = YKYouTubeVideo()
var videoArray : [String] = []

self.youtube.contentURL = (NSURL(string: "http://www.youtube.com/watch?v=" + videoArray[indexPath.row]))
            youtube.parseWithCompletion({ (error) -> Void in
                if self.youtube.videos["hd720"] != nil {
                    let url = NSURL(string: (self.youtube.videos["hd720"] as! String))
                    self.timer.invalidate()
                    MBProgressHUD.hideHUDForView(self.view, animated: true)
                    let player = MPMoviePlayerViewController()
                    player.moviePlayer.contentURL = url
                    self.presentMoviePlayerViewControllerAnimated(player)
                    player.moviePlayer.play()
                } else if self.youtube.videos["medium"] != nil {
                    let url = NSURL(string: (self.youtube.videos["medium"] as! String))
                    self.timer.invalidate()
                    MBProgressHUD.hideHUDForView(self.view, animated: true)
                    let player = MPMoviePlayerViewController()
                    player.moviePlayer.contentURL = url
                    self.presentMoviePlayerViewControllerAnimated(player)
                    player.moviePlayer.play()
                } else if self.youtube.videos["small"] != nil {
                    let url = NSURL(string: (self.youtube.videos["small"] as! String))
                    self.timer.invalidate()
                    MBProgressHUD.hideHUDForView(self.view, animated: true)
                    let player = MPMoviePlayerViewController()
                    player.moviePlayer.contentURL = url
                    self.presentMoviePlayerViewControllerAnimated(player)
                    player.moviePlayer.play()
                } else {
                    let refreshAlert = UIAlertController(title: "Error", message: "Video Not Found!", preferredStyle: UIAlertControllerStyle.Alert)
                    presentViewController(refreshAlert, animated: true, completion: nil)
                }

我的视频在iPhone上仍然全屏播放,但在iPad上没有全屏播放。我必须在YouTubePlayer.swift上做个改变。如果在本节中将allowsInlineMediaPlayback更改为false:

fileprivate func buildWebView(_ parameters: [String: AnyObject]) {
    webView = UIWebView()
    webView.allowsInlineMediaPlayback = false
    webView.mediaPlaybackRequiresUserAction = false
    webView.delegate = self
    webView.scrollView.isScrollEnabled = false
}
它现在将在iPad上全屏播放。或者至少在写这篇文章的时候它正在工作。我希望这有帮助