public class myWebChromeClient extendsWebChromeClient {

@Overridepublic voidonReceivedTitle(WebView view, String title) {super.onReceivedTitle(view, title);

LogUtils.i(NewsDetailsActivity.class, "title:" +title);if (getIntent().getStringExtra("ifIsFromFocus") != null) {if (ifFirstWebPage == 0) {

ifFirstWebPage++;

pre_title=title;

}

shareTitle=title;

tvTitle.setText(title);

}

}privateView xprogressvideo;//播放网络视频时全屏会被调用的方法

@Overridepublic voidonShowCustomView(View view, CustomViewCallback callback) {

rlTopTitle=(RelativeLayout) findViewById(R.id.rlTopTitle);

rlTopTitle.setVisibility(View.GONE);

getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);

setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);

mWebView.setVisibility(View.INVISIBLE);//如果一个视图已经存在,那么立刻终止并新建一个

if (xCustomView != null) {

callback.onCustomViewHidden();return;

}

video_fullView.addView(view);

xCustomView=view;

xCustomViewCallback=callback;

video_fullView.setVisibility(View.VISIBLE);

}//视频播放退出全屏会被调用的

@Overridepublic voidonHideCustomView() {if (xCustomView == null)//不是全屏播放状态

return;

setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);

xCustomView.setVisibility(View.GONE);

video_fullView.removeView(xCustomView);

xCustomView= null;

video_fullView.setVisibility(View.GONE);

xCustomViewCallback.onCustomViewHidden();

mWebView.setVisibility(View.VISIBLE);

rlTopTitle=(RelativeLayout) findViewById(R.id.rlTopTitle);

rlTopTitle.setVisibility(View.VISIBLE);

getWindow().clearFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);

mWebView.getSettings().setBuiltInZoomControls(true);

}//视频加载时进程loading

@OverridepublicView getVideoLoadingProgressView() {if (xprogressvideo == null) {

LayoutInflater inflater=LayoutInflater

.from(NewsDetailsActivity.this);

xprogressvideo=inflater.inflate(

R.layout.video_loading_progress,null);

}returnxprogressvideo;

}

}

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐