layout布局:
<WebView
android:id="@+id/wv_web"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"/>
跳转到webView的页面时,intent携带数据:
Intent intent = new Intent();
intent.setClass(mActivity, NewsDatailAcitivity.class);
//从json串中读出的数据。
String mUrl = newsList.get(position).url;
if (mUrl != null) {
mUrl = mUrl.replace("10.0.2.2:8080", "192.168.1.6:8080");
intent.putExtra("url", mUrl);
mActivity.startActivity(intent);
}
webView显示:
private void initData() {
// String url = getIntent().getExtras().getString("url");
String url = getIntent().getStringExtra("url");
mwebView.loadUrl(url); //只需一个url就能加载网络数据。
}
网页。
开发者选项——显示布局边界
webView中:网页页面显示 一个点击展开全文, webView默认不支持js。
WebSettings settings = mwebView.getSettings(); //webView 的setting设置。
settings.setJavaScriptEnabled(true); //设置使webView支持JScript。默认为false,改为true。
settings.setBuiltInZoomControls(true); //显示放大缩小按钮。
settings.setUseWideViewPort(true );//双击缩放。
mwebView.loadUrl("https://www.baidu.com/");
webView设置webViewClient;
mwebView.setWebViewClient(new WebViewClient(){
@Override //页面开始加载。
public void onPageStarted(WebView view, String url, Bitmap favicon) {
// TODO Auto-generated method stub
super.onPageStarted(view, url, favicon);
Log.e("网页开始加载","开始加载");
}
@Override
// 页面加载结束的时候。
public void onPageFinished(WebView view, String url) {
// TODO Auto-generated method stub
super.onPageFinished(view, url);
Log.e("网页加载结束","加载结束");
}
@Override//所有跳转的链接都在此方法中回调。
public boolean shouldOverrideUrlLoading(WebView view, String url) {
// TODO Auto-generated method stub
Log.e("跳转的url:", url);
view.loadUrl(url);
return true; //强制让WebView
// return super.shouldOverrideUrlLoading(view, url);
}
});
webView 需要设置加载进度的方法时,以及接收到的标题:
方法是;
mwebView.setWebChromeClient(new WebChromeClient() {
@Override // 进度的改变。
public void onProgressChanged(WebView view, int newProgress) {
// TODO Auto-generated method stub
super.onProgressChanged(view, newProgress);
Log.e("下载进度", newProgress+"");
}
@Override // 接收到的标题。
public void onReceivedTitle(WebView view, String title) {
// TODO Auto-generated method stub
super.onReceivedTitle(view, title);
Log.e("收到的标题", title);
}
});