(一)去掉滚动条
[java] view plain copy
- WebView.setVerticalScrollBarEnabled(false);
- WebView.setHorizontalScrollBarEnabled(false);
(二)去掉缩放按钮
[java] view plain copy
- WebView.getSettings().setBuiltInZoomControls(true);// 设置缩放
- WebView.getSettings().setDisplayZoomControls(false);
(三)自适应屏幕
这个有三种方式:
第一种(个人不推荐使用,会有一些问题):
[java] view plain copy
- WebSetting settings = webView.getSettings();
- settings.setLayoutAlgorithm(LayoutAlgorithm.SINGLE_COLUMN);
LayoutAlgorithm是一个枚举用来控制页面的布局,有三个类型:
1.NARROW_COLUMNS:可能的话使所有列的宽度不超过屏幕宽度
2.NORMAL:正常显示不做任何渲染
3.SINGLE_COLUMN:把所有内容放大webview等宽的一列中WebView的优点:
可以直接显示和渲染web页面,直接显示网页
webview可以直接用html文件(网络上或本地assets中)作布局
和JavaScript交互调用
一、基本使用
首先layout中即为一个基本的简单控件:
<WebView
android:id="@+id/webView1"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_marginTop="10dp" />
同时,因为要房访问网络,所以manifest中必须要加uses-permission:
<uses-permission android:name="android.permission.INTERNET"/>
在activity中即可获得webview的引用,同时load一个网址:
webview = (WebView) findViewById(R.id.webView1);
webview.loadUrl("http://www.baidu.com/");
//webview.reload();// reload page
这个时候发现一个问题,启动应用后,自动的打开了系统内置的浏览器,解决这个问题需要为webview设置 WebViewClient,并重写方法:
webview.setWebViewClient(new WebViewClient(){
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
return true;
}
@Override
public void onPageStarted(WebView view,String url,Bitmap favicon)//网页页面开始加载的时候
//load;
//view.setEnabled(false);
super.onPageStarted(view,url,favion);
}
//处理加载异常。可以显示一个错误的html页面,也隐藏webView.显示原生错误提示
@Override
public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) {
super.onReceivedError(view, errorCode, description, failingUrl);
}
@Override
public void onPageFinished(WebView view, String url) {//网页加载结束的时候
//dismissLoading();
// view.setEnabled(true);
}
});