Android笔记——WebView
来源:互联网 发布:bluebox是什么软件 编辑:程序博客网 时间:2024/04/19 09:35
Android笔记——WebView
注:本文笔记来自慕课网
- 1、通过Intent调用系统浏览器打开页面
1. String url = "http://www.baidu.com";2. Uri uri = Uri.parse(url);3. Intent intent = new Intent(Intent.ACTION_VIEW, uri);4. startActivity(intent);
2、WebView基本使用
- (1)、布局文件中使用
<webview />
标签 - (2)、在Mainfirst文件中添加网络权限
- (3)、在activity中声明WebView并通过
loadUrl(url)
函数打开页面loadUrl(url)
函数可打开两类文件- 一类是本地文件,存放在assets文件夹中
webView.loadUrl("file:///android_asset/xx.html")//一定要三个斜杠
- 一类是web资源
- 一类是本地文件,存放在assets文件夹中
- (4)、WebView默认使用系统或第三方浏览器打开web资源,然Android提供覆盖此行为
webView.setWebViewClient(new WebViewClient(){ public boolean shouldOverrideUrlLoading(WebView view, String url){ //返回值是true的时候控制网页在WebView中打开,如果为false则调用系统或第三方浏览器打开 view.loadUrl(url); return true; } //WebViewClient帮助WebView去处理一些页面控制和请求通知 });
- (1)、布局文件中使用
3、WebView启用JavaScript
1. WebSettings settings = webView.getSettings();2. settings.setJavaScriptEnabled(true);
- 4、WebView向前的导航(返回按键)
webview已自动记录网页历史记录
//改写物理按键——返回的逻辑 @Override public boolean onKeyDown(int keyCode, KeyEvent event) { // TODO Auto-generated method stub if(keyCode==KeyEvent.KEYCODE_BACK) { //Toast.makeText(this, webView.getUrl(), Toast.LENGTH_SHORT).show(); if(webView.canGoBack()) { webView.goBack();//返回上一页面 return true; } else { System.exit(0);//退出程序 } } return super.onKeyDown(keyCode, event); }
- 5、页面加载进度
webView.setWebChromeClient(new WebChromeClient(){ @Override public void onProgressChanged(WebView view, int newProgress) { // TODO Auto-generated method stub //newProgress 1-100之间的整数 if(newProgress==100) { //网页加载完毕,关闭ProgressDialog closeDialog(); } else { //网页正在加载,打开ProgressDialog openDialog(newProgress); } } private void closeDialog() { // TODO Auto-generated method stub if(dialog!=null&&dialog.isShowing()) { dialog.dismiss(); dialog=null; } } private void openDialog(int newProgress) { // TODO Auto-generated method stub if(dialog==null) { dialog=new ProgressDialog(MainActivity.this); dialog.setTitle("正在加载"); dialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL); dialog.setProgress(newProgress); dialog.show(); } else { dialog.setProgress(newProgress); } } });
- 6、WebView缓存使用
//WebView加载页面优先使用缓存加载 settings.setCacheMode(WebSettings.LOAD_CACHE_ELSE_NETWORK);
0 0
- Android笔记——WebView
- Android学习笔记之——WebView
- Android Training学习笔记——WebView
- android学习笔记——webView
- android 学习笔记3——WebView的使用
- Android开发笔记—WebView、ProgressDialog的基础使用
- Android—WebView介绍
- Android—(WebView控件)
- Android WebView学习笔记
- WebView使用笔记 Android
- Android WebView 笔记
- [笔记] Android WebView使用方法
- Android WebView 使用笔记
- android WebView笔记
- Android WebView学习笔记
- Android WebView使用笔记
- android webview 学习笔记
- Android:控件WebView笔记
- Centos6.4上python2.6.6升级到2.7.6
- HDU 4456 Crowd (cdq分治)
- Android处理图片OOM的若干方法小结
- Valentine's Day Round(HDU BC比赛)
- Android中解决图像解码导致的OOM问题
- Android笔记——WebView
- 求两个文本文件中的交叉项
- 阿里巴巴2015研发工程师A
- 如何减少压力--重塑心灵
- MySQL左连接、右连接和内连接详解
- 必须改变自己
- 点击button实现Storyboard中TabBar Controller的tab切换
- 13.3 探索并获取数据
- 杭电2036 改革春风吹满地