Android视频WebView全屏不起作用 - onShowCustomView()未被调用
创始人
2024-10-10 13:00:43
0

要在Android WebView中实现全屏播放视频,您可以使用以下步骤:

  1. 首先,在您的AndroidManifest.xml文件中添加一个配置,以允许您的应用程序在全屏模式下显示:

  1. 在您的WebViewClient中,重写onShowCustomView方法并在其中处理全屏视频播放。以下是一个示例:
import android.webkit.WebChromeClient;
import android.webkit.WebView;
import android.webkit.WebViewClient;

public class MyWebViewClient extends WebViewClient {

    private WebView mWebView;
    private View mCustomView;
    private WebChromeClient.CustomViewCallback mCustomViewCallback;

    // ...

    @Override
    public void onShowCustomView(View view, WebChromeClient.CustomViewCallback callback) {
        if (mCustomView != null) {
            callback.onCustomViewHidden();
            return;
        }
        
        mCustomView = view;
        mCustomViewCallback = callback;
        mWebView.setVisibility(View.GONE);
        mCustomViewContainer.addView(view);
        mCustomViewContainer.setVisibility(View.VISIBLE);
        mCustomViewContainer.bringToFront();
    }

    @Override
    public void onHideCustomView() {
        if (mCustomView == null) {
            return;
        }
        
        mCustomView.setVisibility(View.GONE);
        mCustomViewContainer.removeView(mCustomView);
        mCustomViewCallback.onCustomViewHidden();
        mCustomView = null;
        mCustomViewCallback = null;
        mWebView.setVisibility(View.VISIBLE);
    }

    // ...
}

在这个示例中,您需要使用自定义的布局容器(例如FrameLayout)来容纳全屏视图(例如视频)并处理其可见性。

  1. 在您的WebView中设置上述WebViewClient:
WebView webView = findViewById(R.id.webView);
webView.setWebViewClient(new MyWebViewClient());
  1. 最后,在您的HTML代码中,确保您的视频元素具有webkit-playsinline属性,这将确保视频在WebView中播放而不是全屏播放:

这些步骤应该能够解决Android WebView中全屏视频不起作用的问题。请注意,某些视频网站(如YouTube)可能有自己的全屏播放机制,可能需要其他的解决方案。

相关内容

热门资讯

七分钟实锤!德州之星辅助(wp... 七分钟实锤!德州之星辅助(wpk德州)总是有挂(详细辅助力荐教程);1、这是跨平台的德州之星辅助黑科...
第五分钟实锤!德扑之星猫腻(德... 第五分钟实锤!德扑之星猫腻(德州ai)真是有挂(详细辅助黑科技教程)暗藏猫腻,小编详细说明德扑之星猫...
1分钟实锤!德州ai人工智能(... 1分钟实锤!德州ai人工智能(德州wepower)好像存在有挂(详细辅助2025教程);1、金币登录...
第1分钟实锤!德州免费辅助神器... 第1分钟实锤!德州免费辅助神器app(德州扑克)果然是有挂(详细辅助2025教程);1、许多玩家不知...
十分钟实锤!德州ai辅助(we... 十分钟实锤!德州ai辅助(wepower德州)竟然存在有挂(详细辅助必胜教程)一、德州ai辅助软件透...
第十分钟实锤!德州ai机器人(... 第十分钟实锤!德州ai机器人(德扑ai)一直是真的有挂(详细辅助wpk教程)1、任何德州ai机器人a...
四分钟实锤!智星德州菠萝偷偷看... 四分钟实锤!智星德州菠萝偷偷看牌功能(德扑之星)其实真的有挂(详细辅助必备教程)1、在智星德州菠萝偷...
7分钟实锤!智星德州菠萝有挂吗... 7分钟实锤!智星德州菠萝有挂吗(来玩德州app)本来真的有挂(详细辅助扑克教程);1、每一步都需要思...
第6分钟实锤!德州之星有辅助挂... 第6分钟实锤!德州之星有辅助挂(德州nzt)果然存在有挂(详细辅助扑克教程)1、德州之星有辅助挂透视...
第4分钟实锤!德扑之星猫腻(w... 第4分钟实锤!德扑之星猫腻(wepower德州)竟然真的有挂(详细辅助解密教程)1、进入游戏-大厅左...