ANDROID中WEBVIEW的使用

1.控件WebView显示网页
WebView可以使得网页轻松的内嵌到app里,还可以直接跟js相互调用。
webview有两个方法:setWebChromeClient和setWebClient
setWebClient:主要处理解析,渲染网页等浏览器做的事情
setWebChromeClient:辅助WebView处理Javascript的对话框,网站图标,网站title,加载进度等
WebViewClient就是帮助WebView处理各种通知、请求事件的。
在l设置访问网络权限:
<uses-permission android:name="android.permission.INTERNET"/>
控件:
<WebView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/webView"
/>
用途一:加载本地/Web资源
example.html存放在assets文件夹内
调用WebView的loadUrl()方法,
加载本地资源
webView=(WebView)findViewById(R.id.webView); webView.loadUrl("file:///android_asset/example.html");加载web资源:
webView=(WebView)findViewById(R.id.webView); webView.loadUrl("baidu");
用途二:在程序内打开网页
创建一个自己的WebViewClient,通过setWebViewClient关联stopen;
import android.app.Activity;
import android.os.Bundle;
import android.webkit.WebView;
import android.webkit.WebViewClient;
publicclass MainActivity extends Activity{
家用管道疏通机private WebView webView;
@Override
protectedvoid onCreate(Bundle savedInstanceState){
setContentView(st);
init();
}
privatevoid init(){
webView=(WebView)findViewById(R.id.webView);
//WebView加载web资源
webView.loadUrl("baidu");
//覆盖WebView默认使用第三方或系统默认浏览器打开网页的行为,使网页用WebView打开
webView.setWebViewClient(new WebViewClient(){
@Override
无镍电镀publicboolean shouldOverrideUrlLoading(WebView view,String url){
//TODO Auto-generated method stub
//返回值是true的时候控制去WebView打开,为false调用系统浏览器或第三方浏览器view.loadUrl(url);
returntrue;
}
});
}
}
用途三:
如果访问的页面中有Javascript,则webview必须设置支持Javascript
//启用支持javascript
WebSettings Settings();
settings.setJavaScriptEnabled(true);
用途四:
wan-107如果希望浏览的网页后退而不是退出浏览器,需要WebView覆盖URL加载,让它自动生成历史访问记录,那样就可以通过前进或后退访问已访问过的站点。
//改写物理按键——返回的逻辑@Override
publicboolean onKeyDown(int keyCode,KeyEvent event){
//TODO Auto-generated method stubif(keyCode==KeyEvent.KEYCODE_BACK)
{if(webView.canGoBack())
{
}
光栅化else
{
矫眼镜}超滤膜清洗
}
用途五:判断页面加载过程
webView.setWebChromeClient(new WebChromeClient(){
@Override
publicvoid onProgressChanged(WebView view,int newProgress){
//TODO Auto-generated method stubif(newProgress== 100){
//网页加载完成
}else{
/
/加载中
}
}
});
用途六:缓存的使用
优先使用缓存
不使用缓存:
浏览器控件是每个开发环境都具备的,这为马甲神功提供了用武之地,windows的有webbrowser,android和ios都有webview。只是其引擎不同,相对

本文发布于:2024-09-23 12:30:45,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/1/278309.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:网页   浏览器   访问   加载   打开   处理
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议