Android笔记(一):使用WebView
来源:互联网 发布:mac系统更新安装失败 编辑:程序博客网 时间:2024/05/21 12:51
很多时候,我们需要在app中打开网页,或者直接将某个网页封装成app,其实实现起来很容易,我们只需要使用WebView就可以做到了。
完整项目地址:https://github.com/KMKNKK/WebView_text
项目DSDN下载地址:http://download.csdn.net/download/qq_36113598/10011066
首先,声明在xml文件里部署webview,然后在java文件里声明webview;
接着,初始化websetting,使webview满足某些需求,以打开各种网页:
private void initView() { WebSettings setting = mWebView.getSettings(); setting.setJavaScriptEnabled(true);//支持Js setting.setCacheMode(WebSettings.LOAD_DEFAULT);//缓存模式 setting.setBuiltInZoomControls(true); //是否支持画面缩放,默认不支持 setting.setSupportZoom(true); //是否显示缩放图标,默认显示 setting.setDisplayZoomControls(false); //设置网页内容自适应屏幕大小 setting.setLayoutAlgorithm(WebSettings.LayoutAlgorithm.SINGLE_COLUMN); setting.setUseWideViewPort(true); setting.setLoadWithOverviewMode(true); setting.setJavaScriptCanOpenWindowsAutomatically(true); //设置js可以直接打开窗口,如window.open(),默认为false setting.setSupportZoom(true); //是否可以缩放,默认true setting.setBuiltInZoomControls(true); //是否显示缩放按钮,默认false setting.setUseWideViewPort(true); //设置此属性,可任意比例缩放。大视图模式 setting.setLoadWithOverviewMode(true); //和setUseWideViewPort(true)一起解决网页自适应问题 setting.setAppCacheEnabled(true); //是否使用缓存 setting.setDomStorageEnabled(true); //DOM Storage //displayWebview.getSettings().setUserAgentString("User-Agent:Android"); //设置用户代理,一般不用 }
这里我将初始化封装成一个函数,在webview声明语句后面调用就好了。
接着,设置网页加载规则:
mWebView.setWebViewClient(new WebViewClient() { @Override public boolean shouldOverrideUrlLoading(WebView view, String url) { if(url == null) return false; try { if (url.startsWith("http:") || url.startsWith("https:")) { view.loadUrl(url); return true; } else { Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url)); startActivity(intent); return true; } } catch (Exception e) { //防止crash (如果手机上没有安装处理某个scheme开头的url的APP, 会导致crash) return false; } } });
由于webview只能识别http、https开头的网页,所以如果打开不是这两个开头的网址会出现:加载网页出现(“找不到网页net:err_unknown_url_scheme”)的错误,所以要在shouldOverrideUrlLoading里写入不是http、https开头的网址的解决办法。
阅读全文
1 0
- Android笔记(一):使用WebView
- Android WebView使用笔记(一)
- Android WebView使用(一)
- Android WebView使用(一)
- WebView的使用笔记(一)
- WebView使用笔记 Android
- Android WebView 使用笔记
- Android WebView使用笔记
- Android webview控件(一) 使用webview开发浏览器实例
- Android WebView的使用(一)
- android WebView(一)基本使用
- Android控件使用:WebView(一)
- Android WebView使用精解(一)
- Android WebView的使用(一)
- Android笔记(7)---WebView的使用
- Android WebView的使用笔记(上)
- Android中的WebView使用(一)
- Android:控件WebView使用(一)
- linux C数据结构类型
- 杭电2005 第几天?
- 10.7 蚂蚁 2392
- 【模板——ing】O(n)回文子串(Manacher)算法
- python:BeautifulSoup 模块使用指南
- Android笔记(一):使用WebView
- 第一章 变量 数据类型 常用获取元素的方式
- [数论] HAOI2012 容易题
- Java核心技術卷_?_對象與類
- 【面向HTML5--Canvas绘图】
- 在线安装cuda tensorflow
- 缓存框架EhCache整合shiro权限验证(基于spring整合)
- 10.8
- 我的大学第一季(开场篇)