Android:打造一个属于自己的浏览器(2)
2017-06-03 18:13
225 查看
昨天我们介绍了WebView控件的基本操作方法,今天我们就来学习一下WebView控件的WebViewCient监听事件。当然,我们还是使用上次的例子,就是那个叫mainWebView的WebView。
我们可以通过WebView控件的
在我们的Android Studio开发工具中按键盘上的Ctrl+O键,就可以在弹出的对话框里自由地选择要加入的事件代码了。
![](https://img-blog.csdn.net/20170603173538314?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcXFfMzMzNTcyMTE=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
接下来,我们就可以熟悉一下各种各样的事件了:
网页正在加载时触发
点击按键时触发
网页开始加载时触发
网页加载完成时触发
网页内资源加载时触发
收到网页错误时触发
重新请求网络数据时触发
这时候,你估计已经很满足了吧,学了这么多东西,收获真大啊!但别着急,你再运行一下程序,随便打开一个链接,是不是出现了一个问题呢?
这个问题就是说,WebView控件跳转网页时,都会默认从系统浏览器(而不是从我们的WebView)进行加载,更有甚者,应用程序还让我们选择打开网页要用的浏览器。那么,如何解决这个看起来很棘手的问题呢?
我们可以在shouldOverrideUrlLoading事件里进行一些基本的设置,以此解决这个问题。总体来讲,监听器里应该写的代码如下:
再次运行程序,就会发现问题已经解决了。
好了,关于WebView控件我就介绍到这里吧,顺便贴上《Android:打造一个属于自己的浏览器(1)》的网址:
http://blog.csdn.net/qq_33357211/article/details/72847424
我们可以通过WebView控件的
setWebViewClient函数来使用WebView的各种监听事件,其使用方法如下:
final WebView wv = (WebView)findViewById(R.id.mainWebView); wv.setWebViewClient(new WebViewClient() { //在这里写事件代码 });
在我们的Android Studio开发工具中按键盘上的Ctrl+O键,就可以在弹出的对话框里自由地选择要加入的事件代码了。
接下来,我们就可以熟悉一下各种各样的事件了:
shouldOverrideUrlLoading:
网页正在加载时触发
shouldOverrideKeyEvent:
点击按键时触发
onPageStarted:
网页开始加载时触发
onPageFinished:
网页加载完成时触发
onLoadResource:
网页内资源加载时触发
onReceivedError:
收到网页错误时触发
onFormResubmission:
重新请求网络数据时触发
这时候,你估计已经很满足了吧,学了这么多东西,收获真大啊!但别着急,你再运行一下程序,随便打开一个链接,是不是出现了一个问题呢?
这个问题就是说,WebView控件跳转网页时,都会默认从系统浏览器(而不是从我们的WebView)进行加载,更有甚者,应用程序还让我们选择打开网页要用的浏览器。那么,如何解决这个看起来很棘手的问题呢?
我们可以在shouldOverrideUrlLoading事件里进行一些基本的设置,以此解决这个问题。总体来讲,监听器里应该写的代码如下:
@Override public boolean shouldOverrideUrlLoading(WebView view, WebResourceRequest request) { view.loadUrl(request.getUrl().toString()); return false; }
再次运行程序,就会发现问题已经解决了。
好了,关于WebView控件我就介绍到这里吧,顺便贴上《Android:打造一个属于自己的浏览器(1)》的网址:
http://blog.csdn.net/qq_33357211/article/details/72847424
相关文章推荐
- 打造一个属于自己的应用服务自动监控警报程序 推荐
- 3天打造一个 android 小游戏
- Android 隐式意图 让用户选择一个浏览器访问网址
- 打造一个没有Google的Android
- 打造支持apk下载和html5缓存的 IIS(配合一个超简单的android APP使用)具体解释
- 使用.NET打造属于自己的个性化浏览器
- Android 打造编译时注解解析框架 这只是一个开始
- 纯CSS打造一个顶部工具条(兼容所有浏览器)
- Android 一个URL开启手机浏览器
- 用.Net打造一个移动客户端(Android/IOS)的服务端框架NHM(四)——Android端Http访问类(转)
- 3天打造一个 android 小游戏
- 用.Net打造一个移动客户端(Android/IOS)的服务端框架NHM(五)——Android端消息处理机制
- 用.Net打造一个移动客户端(Android/IOS)的服务端框架NHM(四)——Android端Http访问类
- Android 制作一个网页源代码浏览器(HttpURLConnection)
- <转>用PyQt4打造一个简易浏览器
- 如何利用Microsoft Web Browser控件在VC中创建一个属于自己的浏览器
- 用.Net打造一个移动客户端(Android/IOS)的服务端框架NHM(三)——搭建Android开发环境,用Hibernate生成Android项目的Model层
- android -- 一个简单的浏览器
- 3天打造一个 android 小游戏
- 打造一个属于自己的图标字体字库