WebView,即“Android System WebView”,在移动应用开发中具有广泛的应用场景。可以作为APP内置浏览器,显示链接的内容。以及在应用中展示广告内容。并完全承载APP内的所有交互,实现原生应用与网页内容的无缝结合。有需要的用户可以在本站下载。

需求1:根据URL加载网页
1、直接在Activity上加载一个WebView
运行效果图:

2、布局代码中设置WebView
相信大家都见过很多的新闻类App吧或者门户信息类的App,他的结构可能是这样的:

左上角一个点击关闭当前Activity的按钮,中间是新闻的title,右面是一个刷新按钮, 而在右下角可能有这样一个悬浮的按钮,当我们滑动超过屏幕宽度他就会显示出来, 当用户点击后又会回滚到网页的顶部!
android的WebView组件可以说是相当的强大,现将项目中经常用到的几个功能总结如下:
一、背景设置

WebView.setBackgroundColor(0);//先设置背景色为transparent
WebView.setBackgroundResource(R.drawable.yourImage);//然后设置背景图片
二、获得WebView网页加载初始化和完成事件
步骤:
1、创建一个自己的WebViewClient(继承 WebViewClient 类)如WebViewClient
2、重载里面的 onPageFinished(WebView view, String url)方法,(webview加载完成会调用这个方法),这个方法放自己想要做的事情,在webview加载完成以后
3、关联你自己的webviewclient 与 webview 通过 这个方法:webView.setWebViewClient( new WebViewClient();

如果需要监视加载进度的,需要创建一个自己的WebChromeClient类,并重载方法onProgressChanged,再

布局文件:

要注意的是,其中的webView的一系列用法,比如 webView.getSettings()。setJavaScriptEnabled(true);设置可以使用javscript;

等等,具体参考API
而进度条的使用是在new出一个setWebChromeClient后,可以在内部类中写 onProgressChanged事件
总结:在WebView的设计中,不是什么事都要WebView类干的,有些杂事是分给其他人的,这样WebView专心干好自己的解析、渲染工作就行了。
WebViewClient就是帮助WebView处理各种通知、请求事件的,具体来说包括:
onLoadResource
onPageStart
onPageFinish
onReceiveError
onReceivedHttpAuthRequest
WebChromeClient是辅助WebView处理Javascript的对话框,网站图标,网站title,加载进度等
onCloseWindow(关闭WebView)
onCreateWindow()
onJsAlert (WebView上alert是弹不出来东西的,需要定制你的WebChromeClient处理弹出)
onJsPrompt
onJsConfirm
onProgressChanged
onReceivedIcon
onReceivedTitle
优势:
提供统一的浏览体验,使用户在应用内即可浏览网页内容。
支持丰富的网页技术和多媒体元素,提升用户体验。
允许网页与原生应用进行交互,实现更强大的功能。
注意事项:
由于WebView允许网页中的JavaScript代码与原生应用代码进行交互,因此开发者需要确保网页内容的安全性,避免恶意代码对应用和用户造成损害。
在使用WebView时,开发者需要关注其性能和兼容性,确保在不同设备和系统版本上都能提供良好的用户体验。
美丽心情壁纸免费版下载v2.1.5 手机版
49.0M万顺车主司机端下载安装安卓版v7.4.2 官方版
135.3Minbox笔记app官方版v2.2.30 免费版
9.9M伊利会员中心下载手机版v2.21 官方版
2.5M嘟嘟电话app官方下载v1.6.8 安卓版
14.9Mbaray巴乐外卖手机版v3.7.3 最新版
129.3Mjo鸡尾酒软件安卓版v9.8.7 免费版
52.7M莆田鞋货源app最新版v1.7.0 官方版
29.9M空港嘉华官方下载安卓版v6.0.4 手机版
46.5M百度地图北斗导航最新版 v21.12.0 安卓版
200.44MB