privateIX5WebChromeClient.CustomViewCallback xCustomViewCallback;private FrameLayout video_fullView;//全屏时视频加载view
privateView xCustomView;private com.tencent.smtt.sdk.WebChromeClient xwebchromeclient = newcom.tencent.smtt.sdk.WebChromeClient() {
@Overridepublic void onProgressChanged(com.tencent.smtt.sdk.WebView webView, intpercent) {super.onProgressChanged(webView, percent);if (percent > 40) {
webView.setVisibility(View.VISIBLE);
}
}//拦截全屏调用的方法
@Overridepublic voidonShowCustomView(View view, IX5WebChromeClient.CustomViewCallback callback) {super.onShowCustomView(view, callback);
getActivity().setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
Log.e("my","onShowCustomView----xCustomView:" +xCustomView);
webView.setVisibility(View.INVISIBLE);//若是一个视图已经存在,那么马上终止并新建一个
if (xCustomView != null) {
callback.onCustomViewHidden();return;
}view.setVisibility(View.VISIBLE);
video_fullView.addView(view);
xCustomView =view;
xCustomView.setVisibility(View.VISIBLE);
xCustomViewCallback=callback;
video_fullView.setVisibility(View.VISIBLE);
}
@Overridepublic voidonHideCustomView() {super.onHideCustomView();
Log.e("my","onHideCustomView----xCustomView:" +xCustomView);if (xCustomView == null){//不是全屏播放状态
return;
}
getActivity().setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
xCustomView.setVisibility(View.GONE);
video_fullView.removeView(xCustomView);
xCustomView= null;
video_fullView.setVisibility(View.GONE);
xCustomViewCallback.onCustomViewHidden();
webView.setVisibility(View.VISIBLE);
}
};/*** 判断是不是全屏
*
*@return
*/
public booleaninCustomView() {return (xCustomView != null);
}/*** 全屏时按返加键执行退出全屏方法*/
public voidhideCustomView() {
xwebchromeclient.onHideCustomView();
getActivity().setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
}