WebView 从入坑到出坑(二)

WebView 从入坑到出坑(一)

WebView网络错误加载自定义页面

  1. 需求:因为如果没网络或者服务器异常加载时间过长,而且系统自带页面不好看,所以要显示自己的错误页面,并且减少加载时间。
  2. 实现:加上一个自己的定时器,开始加载的时间定时,结束的时候停止加载并且关闭定时器,用自定义的页面覆盖WebView。
  3. 坑一:自定义的页面覆盖了WebView,但是WebView本身还在加载,并且加载完成以后会覆盖自己的View,所以要用以下API结束WebView本身的网络加载,这样就不会覆盖自己的View。
webview.pauseTimers();
webview.stopLoading();
  1. 坑二:根本没有加载完成的API,onPageFinished和onPageChange 是数据加载完成,不是显示到UI完成,如果在这里面监听并且停止加载就会显示不出页面,就是WebView的页面还没显示出来,就调用了WebView的停止加载,所以在这里监听不要让定时器结束,当时间到了再停止WebView的加载,就是调用一下两个函数:
webview.pauseTimers();
webview.stopLoading();
  1. 参考 我写的WebView
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 174,840评论 25 709
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,288评论 19 139
  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 12,310评论 4 61
  • 今天是记录你的日常以来,第一次写这么早。以前都是你睡着了,我在快睡觉之前写的,多半是十一点多。那时的我已经困了,迷...
    杨茗辞阅读 367评论 7 5
  • 我不知道自己从什么时间开始对“不求甚解”这个词及这个词所代表的一种求学态度有了好感,模糊地认为“不求甚解”所代表的...
    觉醒之旅阅读 2,970评论 3 4