Android WebView 灰色玩button

标签: html5 Android CSS
发布时间: 2016/9/26 4:47:29
注意事项: 本文中文内容可能为机器翻译,如要查看英文原文请点击上面连接.

我使用 HTML5 视频 element 在播放视频的 Android WebView 。这对我来说非常棒,但用这唯一的问题是,视频 element 自动打灰色 button 补充道。 我试过搜索 API,找不到任何可以帮助我的情况。我也尝试过使用 CSS 与下面的样式︰

video.mobile_controls::-webkit-media-controls-fullscreen-button 
{
    display: inline !important; // Also used "display:none"
}

进一步,我试着在阴影中戳 dom,但找不到任何与此相关的。

所以,问题是如何做删除这种灰色 button 。 这里是图片供参考︰

enter image description here

解决方法 1:

问题是视频的海报。但还有更好的方式固定这通过扩展从 WebChromeClient 和重写 getDefaultVideoPoster();

这里是解决方案︰

import android.graphics.Bitmap;
import android.webkit.WebChromeClient;

public class WebChromeClientCustomPoster extends WebChromeClient {
    @Override
    public Bitmap getDefaultVideoPoster() {
        return Bitmap.createBitmap(10, 10, Bitmap.Config.ARGB_8888);
    }
}

然后通过做相反地使用此客户端︰

WebChromeClientCustomPoster chromeClient = new WebChromeClientCustomPoster();
mWebView.setWebChromeClient(chromeClient);

一些肮脏的黑客攻击之后,我们发现,滥用海报属性修正此问题。我们解决此问题,请执行以下操作︰

videoElement.setAttribute("poster", "nope");

视频 element 将使用值"不对"作为其海报。因为不是不是一个有效的 URL 的视频 element 不会替换海报并且不会显示一张海报。

赞助商