【问题标题】:Swift 3. AVPlayerViewController issue when exit from fullscreenSwift 3. AVPlayerViewController 从全屏退出时的问题
【发布时间】:2018-05-29 11:31:44
【问题描述】:

当应用程序从全屏退出并且屏幕 UI 滑到顶部时,我在控制台中遇到错误。

错误:

-[AVPlayerViewController exitFullScreenAnimated:completionHandler:] failed with error View need to be loaded before you can call -[AVPlayerViewController (0x1028b5000) exitFullScreenAnimated:completionHandler:]!

应用在 UIWebView 中以嵌入式 HTML 播放 youtube 视频。

代码:

var webView = UIWebView(frame: self.view.frame)
webView.allowsInlineMediaPlayback = true
webView.mediaPlaybackRequiresUserAction = false
embededHTML = "<html><body style='margin:0px;padding:0px;'><script type='text/javascript' src='http://www.youtube.com/iframe_api'></script><script type='text/javascript'>function onYouTubeIframeAPIReady(){ytplayer=new YT.Player('playerId',{events:{onReady:onPlayerReady}})}function onPlayerReady(a){a.target.playVideo();}</script><iframe id='playerId' type='text/html' width='\(self.view.frame.size.width)' height=\(frameHeight) src='http://www.youtube.com/embed/\(youtube_code)?enablejsapi=1&rel=0&playsinline=1&autoplay=1&showinfo=0&modestbranding=0' frameborder='0'></body></html>"

@IBAction func playVideo(_ sender: Any) {
        if let webView = webView {
            self.view.bringSubview(toFront: webView)
            webView.scrollView.isScrollEnabled = false;
            webView.scrollView.bounces = false;
            // Load your webView with the HTML we just set up
            webView.loadHTMLString(embededHTML, baseURL: Bundle.main.bundleURL)
        }
    }

高度赞赏任何帮助。 谢谢。

【问题讨论】:

  • 你能把AVPlayerViewController的部分代码贴出来吗?
  • Tien Nguyen - 代码已发布。
  • @JasurRajabov 您对此有什么解决方案吗?我也有同样的问题
  • @JogendraSingh 不,还没有解决方案。

标签: swift fullscreen avplayerviewcontroller


【解决方案1】:

尝试用 WebKit 的 WKWebView 替换 UIWebView

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多