通过WebView向html页面注入js代码,实现WebView切换白昼模式/夜间模式
2017-10-24 17:33
856 查看
入职的第一天,项目遇到一些技术难题,负责人就说,你懂一些h5,你看看怎么解决webview白昼/夜间模式。然后查了一些资料,找了一些思路;总结下来;
场景:新闻类APP,通过WebView加载html页面,实现白昼/夜间模式。
思路:
方式一:如果html页面是自己写的,那么直接在h5中加入js代码(改变背景和字体颜色),然后用原生android调用js。即native和js互调;这个比较简单,实现代码网上一大堆;但是有个局限,用第三方的新闻类h5页面,没办法这么干;
方式二:通过WebView向html页面注入js代码;核心就在如何向h5页面注入js代码;这种方式既能满足自己的h5页面也能满足第三方的;
原理就是这样,我也废话,太浪费时间。直接上Demo,注释很全;
需要注意:Demo中
1.为自己写的一个html页面,2中的hello.png,是html页面加载的图片;html文件不需要生产R文件,所以应当放在assets目录下;
apk目录下有Demo的apk。
Demo下载地址:http://download.csdn.net/download/kern_/10038083
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
效果如视频: 哎,传不了视频。
场景:新闻类APP,通过WebView加载html页面,实现白昼/夜间模式。
思路:
方式一:如果html页面是自己写的,那么直接在h5中加入js代码(改变背景和字体颜色),然后用原生android调用js。即native和js互调;这个比较简单,实现代码网上一大堆;但是有个局限,用第三方的新闻类h5页面,没办法这么干;
方式二:通过WebView向html页面注入js代码;核心就在如何向h5页面注入js代码;这种方式既能满足自己的h5页面也能满足第三方的;
原理就是这样,我也废话,太浪费时间。直接上Demo,注释很全;
需要注意:Demo中
1.为自己写的一个html页面,2中的hello.png,是html页面加载的图片;html文件不需要生产R文件,所以应当放在assets目录下;
apk目录下有Demo的apk。
Demo下载地址:http://download.csdn.net/download/kern_/10038083
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
效果如视频: 哎,传不了视频。
相关文章推荐
- 通过css注入实现的android webview的夜间模式
- Android Webview 通过反射实现夜间模式
- Android实现js及webview交互之在html页面中调用系统摄像头
- Spring MVC代码实例系列-04:通过自定义视图(继承InternalResourceView),实现既能解析Jsp页面又能解析Html页面的目的
- android webView中的html页面通过javascript访问java代码
- Android 通过注入js实现读取webview中图片并放大的优化
- Android实现js及webview交互之在html页面中调用系统摄像头
- Android使用webview控件加载本地html,通过Js与后台Java实现数据的传递
- Android实现js及webview交互之在html页面中调用系统摄像头
- atitit.GUI图片非规则按钮跟动态图片切换的实现模式总结java .net c# c++ web html js
- js实现单一html页面两套css切换代码
- android webView使用js/css实现夜间模式 长按识别图片以及二维码,网页可以上传图片
- atitit.GUI图片非规则按钮跟动态图片切换的实现模式总结java .net c# c++ web html js
- js实现单一html页面两套css切换代码
- 这个例子主要展示了通过滑动实现viewflipper页面切换
- Android学习笔记_32_通过WebView实现JS代码与Java代码互相通信
- Android切换页面效果的实现二:WebView+ViewPager
- webview html页面加载本地js及img src(二)
- Android切换页面效果的实现二:WebView+ViewPager
- HTML--如何实现通过鼠标事件拖动页面图像(代码)