【发布时间】:2020-04-07 10:58:43
【问题描述】:
我在 webview 中使用 iframe 打开 youtube 视频。它显示视频的默认控制按钮,包括全屏按钮。如何自己调用全屏按钮的功能?例如,我想在横向上全屏显示,但只有通过点击全屏按钮或首次加载时才能全屏打开视频。我需要在播放视频时进入全屏模式。
【问题讨论】:
标签: ios swift webview youtube wkwebview
我在 webview 中使用 iframe 打开 youtube 视频。它显示视频的默认控制按钮,包括全屏按钮。如何自己调用全屏按钮的功能?例如,我想在横向上全屏显示,但只有通过点击全屏按钮或首次加载时才能全屏打开视频。我需要在播放视频时进入全屏模式。
【问题讨论】:
标签: ios swift webview youtube wkwebview
希望您将 YTPlayer 用于 YouTube 视频。 如果没有,你可以在这里找到播放器 - GithubLink
对于 YTPlayer,有一个参数 playsinline。 要始终全屏播放,您需要将 playinline 属性设置为 0。类似于:
let playerVars = [
"playsinline" : 0
]
player.loadWithVideo(id:movieURL, playerVars:playerVars)
【讨论】:
我找到了函数。 webkit的视频标签中有webkitEnterFullScreen:https://developer.apple.com/documentation/webkitjs/htmlvideoelement
所以我只需要通过 javascript 获取视频和执行功能:
playerView.webView?.evaluateJavaScript("document.getElementById('player').contentDocument.getElementsByClassName('video-stream')[0].webkitEnterFullScreen()") { object, error in
print(error)
}
【讨论】: