Android WebView的使用(一)

WebViewClient、WebChromeClient、WebSettings 常用方法介绍

WebViewClient

WebViewClient主要帮助WebView处理各种通知、请求事件

   //设置页面里的超链接,是否跳转用浏览器打开,true保持当前打开,false使用系统浏览器打开
   shouldOverrideKeyEvent(WebView view, KeyEvent event)
   //页面开始加载
   onPageStarted(WebView view, String url, Bitmap favicon)
   //页面加载完成
   onPageFinished(WebView view, String url)
   //加载页面资源,每一个资源加载都会调用一次
   onLoadResource(WebView view, String url)
   //页面加载错误
  onReceivedError(WebView view, int errorCode, String description, String failingUrl)
  //WebView发生改变
  onScaleChanged(WebView view, float oldScale, float newScale)
  //拦截所有请求并替换数据
   shouldInterceptRequest (WebView view, WebResourceRequest request)
  //更新历史记录
  doUpdateVisitedHistory(WebView view, String url, boolean isReload)
  //重新发起请求
  onFormResubmission(WebView view, Message dontResend, Message resend)
  //接收处理https错误
   onReceivedSslError(WebView view, SslErrorHandler handler, SslError error)
  //Key事件未被加载
  onUnhandledKeyEvent(WebView view, KeyEvent event)

WebChromeClient

辅助WebView处理Javascript的对话框,网站图标,网站title,加载进度等
//获取网页title
onReceivedTitle(WebView view, String title)
//获取网页图标
onReceivedIcon(WebView view, Bitmap icon)
//网页加载进度
onProgressChanged(WebView view, int newProgress)
//创建webview
onCreateWindow(WebView view, boolean isDialog, boolean isUserGesture, Message resultMsg)
//关闭webview
 onCloseWindow(WebView window)
//处理webview的各种弹框
 onJsAlert(WebView view, String url, String message, JsResult result)
onJsPrompt(WebView view, String url, String message, String defaultValue, JsPromptResult result) 
onJsConfirm(WebView view, String url, String message, JsResult result)

将自定义的WebViewClient和WebChromeClient设置给webview
webView.setWebViewClient(mWebViewClient);
webView.setWebChromeClient(mWebChromeClient);

WebSettings 


//是否支持Javascript交互,默认fasewebSettings.setJavaScriptEnabled(boolean support) 
//是否支持网页中的手势缩放,默认true
setSupportZoom(boolean support)
设置WebView是否使用其内置的变焦机制,该机制集合屏幕缩放控件使用,默认是false,不使用内置变焦机制。
setBuiltInZoomControls(boolean enabled)
设置WebView使用内置缩放机制时,是否展现在屏幕缩放控件上,默认true,展现在控件上。
setDisplayZoomControls(boolean enabled)
//设置WebView是否通过手势触发播放媒体,默认true
setMediaPlaybackRequiresUserGesture(false); 
//开启或禁用文件访问,默认true, 禁止仍能访问Assets文件和resources资源文件 
setAllowFileAccess(boolean allow)
//设置WebView是否使用预览模式加载界面,默认fasle
//setLoadWithOverviewMode(boolean overview)
设置WebView是否加载图片资源,默认true
//setLoadsImagesAutomatically (boolean flag)
//是否保存密码,默认true,但是涉及到安全性的问题API>18不在支持webview保存密码
setSavePassword (boolean save)
//设置WebView字体最小值,默认值8,取值1到72
setMinimumFontSize(int size)
设置WebView默认值字体值,默认值16,取值1到72
setDefaultFontSize(int size)
//设置是否开启DOM存储API权限,默认false
setDomStorageEnabled(boolean flag)
设置Application缓存API是否开启,默认false
setAppCacheEnabled(boolean flag)
//设置Application缓存模式
setCacheMode(int mode)
//设置当前Application缓存文件路径
setAppCachePath(String appCachePath)
//开启定位功能,默认true
setGeolocationEnabled(boolean flag)


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值