YouTubePlayerView 全屏将视频捕捉到顶部

Posted

技术标签:

【中文标题】YouTubePlayerView 全屏将视频捕捉到顶部【英文标题】:YouTubePlayerView fullscreen snaps video to top 【发布时间】:2017-10-29 20:01:59 【问题描述】:

我正在使用 YouTubePlayerView 库在我的 ios 10 应用中快速显示 YouTube 播放器。我能够在视图控制器中以纵向和横向模式正确播放 YouTube 全屏视频。很多时候,视频会“捕捉”到屏幕顶部,而不是纵向播放在中心。所以,而不是这个:

我明白了:

我的约束设置正确,前导、尾随、底部和顶部都设置为 YouTubePlayerView 的父视图(实际上是控制器视图)。我怀疑这可能不是布局问题,至少不是原生问题。相反,我认为这是一个 UIWebView 问题。目前 playerParams 的设置如下:

fileprivate func playerParameters() -> YouTubePlayerParameters 

    return [
        "height": "100%" as AnyObject,
        "width": "100%" as AnyObject,
        "events": playerCallbacks() as AnyObject,
        "playerVars": playerVars as AnyObject
    ]

这是播放器的默认设置。

但是如何在 web 视图中正确布局播放器,以便在纵向显示视频时垂直居中?

谢谢

附言将播放器模式设置为内联不会削减它,因为我希望有一个“完成”按钮可用于关闭视频视图。

【问题讨论】:

【参考方案1】:

由于 YT youtube 播放器在 WebView 内渲染 html,因此修改 CSS 就可以解决问题。

YTPlayer.htmlstyle标签内添加如下代码

div 
    vertical-align: middle;
    display: table-cell;

【讨论】:

以上是关于YouTubePlayerView 全屏将视频捕捉到顶部的主要内容,如果未能解决你的问题,请参考以下文章

在android中缩放/最小化YoutubePlayerView时调整视频大小

ARM架构macOS操作视频曝光;vivo新专利暗示折叠屏将至!

Camera2全屏预览和图像捕捉

为啥 YoutubePlayerView 每 2 秒停止一次

「科技V报」ARM架构macOS操作视频曝光;vivo新专利暗示折叠屏将至-20200729

YouTubePlayerView 滚动时出现黑色轮廓