使用WebView显示网页

来源:互联网 发布:mac图片放大快捷键 编辑:程序博客网 时间:2024/05/16 22:36

一、使用WebView加载页面:webView.loadUrl();

1、Intent意图打开网页:
String url="http://www.baidu.com/";
Uri uri=new Uri(url);
Intent intent=new Intent(Intent.ACTION_VIEW,uri); 
startActivity(intent); //直接调用默认的浏览器
2、WebView控件打开网页:(需要在manifest中申请联网权限)
webView.loadUrl("file:///android_asset/example.html")//打开本地网页。

webView.loadUrl("http://www.google.com"); 调用系统默认浏览器

使页面获得焦点:webView.requestFocus();

二、覆盖WebView默认通过系统自带浏览器或者第三方浏览器打开网页的行为,是的网页可以在WebView中打开

webview1.setWebViewClient(new WebViewClient(){
//WebViewClient主要帮助WebView去处理一些页面控制和请求数据。
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
return true;//ture的时候,控制网页在webview中打开,
//false的时候在系统自带的浏览器或者三方浏览器打开


三、webview中网页的前进与后退

//改写物理按键的逻辑
public boolean onKeyDown(int keyCode,keyEvent event ){
if(keyCode==keyEvent.KEYCODE_BACK){//如果按下的按钮等于“返回键”
{if(webview.canGoBack()){
webview.goBack();//返回上一个页面
return true;
} else{
System.exit(0);//退出程序
}

四、

由于有些网页可能加载缓慢,所以我们需要去判断页面的加载过程,制作进度条给予用户良好的体验效果

webView.setWebChromeClient(new WebChromeClient(){
@Overrid
public void onProgressChanged(WebView view,int new Progress){
if(newProgress==100){
//加载完成
}
else{
//加载中

}

});



8.WebView缓存的运用:
优先使用缓存:
webView.getSettings().setCacheMode(WebSettings.LOAD_CACHE_ELSE_NETWORK);
不用缓存:
webView.getSettings().setCacheMode(WebSettings.LOAD_NO_CACHE);


0 0
原创粉丝点击