文档详情

Android中webView实战详解.doc

发布:2017-12-19约1.24万字共10页下载文档
文本预览下载声明
Android中webView实战详解 一、WebView 谷歌提供的系统组件,用来加载和展现html网页,其采用webkit内核驱动,来实现网页浏览功能。 拥有load() URL和本地html文件。 注意: 1. loadUrl()必须在主线程中执行。 2. 加载在线网页地址是会用到联网permission权限的,所以需要在AndroidManifest.xml中写入下面代码申请权限: uses-permission Android:name=android.permission.INTERNET / 3. 打开本地html文件时,是不需要设置WebViewClient,对应的asstes目录的url为:file:///android_asset/xxxxx。 4. WebView基本设置 如果我们需要设置WebView的属性,是通过WebView.getSettings()获取设置WebView的WebSettings对象,然后调用WebSettings中的方法来实现的。 // 是否支持缩放,配合方法setBuiltInZoomControls使用,默认true setSupportZoom(boolean support) //是否需要用户手势来播放Media,默认true setMediaPlaybackRequiresUserGesture(boolean require) 是否显示窗口悬浮的缩放控制,默认true setDisplayZoomControls(boolean enabled) 是否允许访问WebView内部文件,默认true setAllowFileAccess(boolean allow) 是否保存表单数据,默认false setSaveFormData(boolean save) // 设置页面文字缩放百分比,默认100% setTextZoom(int textZoom) 。。。。。。 二、WebViewClient WebViewClient主要辅助WebView执行处理各种响应请求事件的,比如: 1. onLoadResource(WebView view, String url) 在加载页面资源时会调用,每一个资源(比如图片)的加载都会调用一次。 public void onLoadResource(WebView view, String url) {     // TODO Auto-generated method stub    if (DEBUG) {      Log.d(TAG, onLoadResource );     }    super.onLoadResource(view, url); } - onPageStarted(WebView view, String url, Bitmap favicon) 在页面加载开始时调用。 public void onPageStarted(WebView view, String url, Bitmap favicon) { // TODO Auto-generated method stub    if (DEBUG) { Log.d(TAG, onPageStarted );   } if (url.endsWith(.apk)) { download(url);//下载处理   } super.onPageStarted(view, url, favicon); } - onPageFinished(WebView view, String url) 在页面加载结束时调用。 - onReceivedError(WebView view, int errorCode,String description, String failingUrl) 加载错误的时候会回调,在其中可做错误处理,比如再请求加载一次,或者提示404的错误页面 这里有四个参数: + WebView view:当前的WebView实例 2. int errorCode:错误码 3. String description:错误描述 4. String failingUrl:当前出错的URL 如加载返回错误时,重新加载错误页面: mWebView.setWebViewClient(new WebViewClient(){ @Override public void onReceivedError(WebView view, int errorCode, String description, String faili
显示全部
相似文档