Swift-YouTube-Player播放自动全屏问题:如何取消该自动行为?
解决Swift-YouTube-Player点击播放自动全屏的问题
我之前在项目里用这个库的时候也踩过一模一样的坑,点击播放就自动跳全屏确实挺影响交互体验的,下面是亲测有效的解决步骤:
第一步:开启WebView内联播放权限
Swift-YouTube-Player底层是基于WKWebView实现的,首先得让WebView允许内联播放。如果是手动初始化播放器视图,可以在创建时配置WKWebViewConfiguration:let webConfig = WKWebViewConfiguration() webConfig.allowsInlineMediaPlayback = true // 如果你需要自动播放,还可以加上这行 webConfig.mediaTypesRequiringUserActionForPlayback = [] let playerView = YTPlayerView(frame: CGRect(x: 0, y: 0, width: 300, height: 200), configuration: webConfig)要是用Storyboard拖的YTPlayerView,就在
viewDidLoad里手动设置:playerView.webView?.configuration.allowsInlineMediaPlayback = true第二步:设置YouTube播放器的内联参数
加载视频时,给playerVars传入playsInline参数并设为1,还可以可选添加fs:0来隐藏全屏按钮,避免用户手动触发全屏:let playerParams = [ "playsInline": 1, "fs": 0 // 可选,不需要全屏按钮就加这行 ] playerView.load(withVideoId: "你的视频ID", playerVars: playerParams)额外小提示
如果上面的方法没生效,建议检查下你的Swift-YouTube-Player版本是否为最新版,旧版本可能存在参数兼容问题,更新到最新版通常能解决这类小bug。
内容的提问来源于stack exchange,提问作者podgradle
相关产品推荐
相关产品推荐

