自定义设置WebChromeClient
在webview的父容器acvitity或者fragment中自定义内部类WebChromeClient
重写其中的onShowCustomView(全屏时调用)和onHideCustomView(竖屏时调用)两个方法.
/** * 全屏时调用 * * @param view * @param callback */ @Override public void onShowCustomView(View view, CustomViewCallback callback) { //view为全屏时,系统提供的视频展示窗口 //如果view 已经存在,则隐藏 mFlWeb.setVisibility(View.GONE); rlTitleLayout.setVisibility(View.GONE); //如果一个视图已经存在,那么立刻终止并新建一个 if (mCustomView != null) { callback.onCustomViewHidden(); return; } mCustomView = view; videoView.setVisibility(View.VISIBLE); mCustomViewCallback = callback; videoView.addView(view); super.onShowCustomView(view, callback); BarUtils.setStatusBarVisibility(WebViewActivity.this, false); if (isHorizontalPath(mH5VideoUrl)) { setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE); } else {