WebView支持JS、Alert以及进度监控等
2015-10-27 14:53
337 查看
1、支持JS
使用WebView支持JS,代码比较简单,直接可以在代码中设置一句话,如下:mWebView.getSettings().setJavaScriptEnabled(true); mWebView.getSettings().setDefaultTextEncodingName("utf-8") ;
JS的支持主要是实现如下方法:
public void addJavascriptInterface(Object obj, String interfaceName) { }
要注意WebView的安全监测机制,需要在API版本17以上可以使用,加上标识:
@JavascriptInterface
2、 背景透明
WebView如果要设置背景透明,在高版本的应用中,需要设置硬件加速机制,代码如下://在高版本的Android系统中,需要关闭硬件加速才能让背景透明 if(android.os.Build.VERSION.SDK_INT >= 11){ mWebView.setLayerType(WebView.LAYER_TYPE_SOFTWARE, null); }
3、WebView支持调试
Android提供了WebView在Chrome上的调试功能,需要首先设置手机为可以调试状态,同时在代码中设置自定义的WebView可以调试,代码如下:// 设置webview为调试模式 if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) { WebView.setWebContentsDebuggingEnabled(true); }
4、支持Alert弹窗
如果我们要支持Alert弹窗,需要实现WebChromeClient当中的一些方法,WebChromeClient中的一些重要方法如下:onCloseWindow(关闭WebView)
onCreateWindow()
onJsAlert (WebView上alert是弹不出来东西的,需要定制你的WebChromeClient处理弹出)
onJsPrompt()
onJsConfirm()
onProgressChanged(进度显示)
onReceivedIcon(网站图标)
onReceivedTitle(网站标题)
支持Alert弹窗,主要是重写
onJsAlert()方法
5、支持错误页面
错误页面的监控主要在WebViewClient这个类完成,它主要是帮助WebView处理各种通知、请求事件的,具体来说包括:onLoadResource
onPageStart
onPageFinish
onReceiveError //这个就是我们想要的方法
onReceivedHttpAuthRequest
自定义404界面等信息,就可以通过重写
onReceiveError()完成!
相关文章推荐
- Android为ViewPager增加切换动画——自定义ViewPager
- [转]Android SDK与API版本的对应关系
- OC语法
- AndroidStudio编译错误
- Android2.2 API中文文档——View
- 移动端的长度单位
- RO05 - 如何编写RemObjects SDK服务端 (Delphi Version)
- Android圆形图片带边框
- Android带日程安排的自定义日历控件
- OC字典 OC数组 OC字符串
- Android 基于google Zxing实现二维码、条形码扫描,仿微信二维码扫描效果
- 微信浏览器 、qq浏览器(video) 的特殊之处
- iOS使用自定义字体
- MindMapper的使用技巧分享
- Android 实现ListView的A-Z字母排序和过滤搜索功能,实现汉字转成拼音
- 学Android---ToggleButton
- iOS 精益编程
- 微信开发相关(动态更新)
- UIWebView加载PDF时出现的问题
- Developing iOS 8 Apps with Swift 学习笔记