当前位置:网站首页>WebView的使用
WebView的使用
2022-08-08 21:02:00 【Kichlvichn·хуту】
1、添加访问网络权限(AndroidManifest.xml)
<uses-permission android:name="android.permission.INTERNET"/>
2、WebView的几种加载方式
//方式1. 加载一个网页:
webView.loadUrl("http://www.baidu.com/");
//方式2:加载apk包中的html页面
webView.loadUrl("file:///android_asset/test.html");
//方式3:加载手机本地的html页面
webView.loadUrl("content://com.android.levi/sdcard/test.html");
Settings的常见设置
WebSettings settings=webView.getSettings();
// webview启用javascript支持 用于访问页面中的javascript
settings.setJavaScriptEnabled(true);
//设置WebView缓存模式 默认断网情况下不缓存
/** * LOAD_CACHE_ONLY: 不使用网络,只读取本地缓存数据 * LOAD_DEFAULT: (默认)根据cache-control决定是否从网络上取数据。 * LOAD_NO_CACHE: 不使用缓存,只从网络获取数据. * LOAD_CACHE_ELSE_NETWORK,只要本地有,无论是否过期,或者no-cache,都使用缓存中的数据。 */
settings.setCacheMode(WebSettings.LOAD_DEFAULT);
//断网情况下加载本地缓存
settings.setCacheMode(WebSettings.LOAD_CACHE_ELSE_NETWORK);}
//让WebView支持DOM storage API
settings.setDomStorageEnabled(true);
//让WebView支持缩放
settings.setSupportZoom(true);
//启用WebView内置缩放功能
settings.setBuiltInZoomControls(true);
//让WebView支持可任意比例缩放
settings.setUseWideViewPort(true);
//让WebView支持播放插件
settings.setPluginState(WebSettings.PluginState.ON);
//设置WebView使用内置缩放机制时,是否展现在屏幕缩放控件上
settings.setDisplayZoomControls(false);
//设置在WebView内部是否允许访问文件
settings.setAllowFileAccess(true);
//设置WebView的访问UserAgent
settings.setUserAgentString(String string);
//设置脚本是否允许自动打开弹窗
settings.setJavaScriptCanOpenWindowsAutomatically(true);
// 加快HTML网页加载完成速度
if (Build.VERSION.SDK_INT >= 19) {
settings.setLoadsImagesAutomatically(true);
} else {
settings.setLoadsImagesAutomatically(false);
}
// 开启Application H5 Caches 功能
settings.setAppCacheEnabled(true);
// 设置编码格式
settings.setDefaultTextEncodingName("utf-8");
3、跳转Activity
拿到链接(URL)以后可以这样开启浏览页面
Bundle bundle = new Bundle();
bundle.putString("URL",url);
Intent intent = new Intent(getActivity(),WebDetailActivity.class);
intent.putExtras(bundle);
startActivity(intent,bundle);
边栏推荐
- amd和Intel的CPU到底哪个好?
- GeoServer introductory study: 07 - release a larger multi-tiered TIF map data
- 二分查找的坑
- GeoServer入门学习:06-发布多层级TIF地图大图数据
- [MEF]第05篇 MEF的目录(Catalog)筛选
- Process实现守护线程
- GeoServer introductory learning: 05-Multi-level MBTiles specification data release
- 文档图像二值化DIB_paper_1
- 第十三届蓝桥杯(Web 应用开发)线上模拟赛【第九题】(知乎首页数据动态化)
- - project experience 】 【 conservation projects
猜你喜欢
Introduction to GeoServer: 01-Introduction
使用LBP特征进行图像分类
GeoServer入门学习:05-多层级MBTiles规范数据发布
Jenkins下载安装
昇腾Ascend 随记 —— 昇腾 AI 的基本架构
charles简单使用
文档图像二值化DIB_paper_2(更新中...)
wp-ctfshow-web10 (group up注入)
Non-resolvableparent POM for xxxx: Could not find artifact xxx and ‘parent.relativePath‘ points at
Bluu Seafood launches first lab-grown fish products
随机推荐
mysql8设置远程连接
Kotlin - learn the fifth day of the Handler
【highcharts应用-双饼图】
Non-resolvableparent POM for xxxx: Could not find artifact xxx and ‘parent.relativePath‘ points at
去噪论文 Attention-Guided CNN for Image Denoising
Kotlin reflection
Kotlin Notes - Difference Between ForEach and ForEachIndexed
手机投影到deepin
究竟什么才是“云计算” | 科普好文
swagger中忽略方法里的对象参数
[The browser opens the exported excel]
最简单的idea构建微服务模块
C#实现Everything——UI与查询 附源码
window下socket(TCP)控制台程序
Flask 教程 第十二章:日期和时间
3 MapReduce简单原理
推荐7款好用的Visual Studio扩展
【带信息的Excel模板下载】
文档图像二值化DIB_database
[Method for converting timestamp to normal time format]