MpAndroidChart坑之release发布版本动画不起作用
来源:互联网 发布:自动发卡对接淘宝 编辑:程序博客网 时间:2024/06/10 18:02
上一次在解决MpAndroidChart分组柱状图问题后,本来以为问题都解决了。今天发布release版本给客户后,自己测试突然发现动画没了。
图表类的界面没有动画总感觉少了点东西,界面的得分也大打折扣。感觉趁着客户没发现尽快解决问题重新发布版本。力求给客户一个
最好的体验效果。毕竟咋们搞应用开发的最重要的就是界面和界面体验了。
首先得找到问题的原因所在,后面解决就简单了。
先看设置动画的方法:
barChart.animateXY(3000, 3000);明明已经调用了这个方法,平时测试也都是没问题,就是在发布release版本就动画无效。
(每次遇到问题都是学习的机会。随着工作经验的积累这种经历已经很难得了。要好好把握这种学习机会。)
查看animateXY源码发现改方法并没有将时间属性保存,而只是单纯的启用了一次动画。所以之后就算刷新
数据其实也不会再出现动画效果了。这也是开发过程中发现的有时动画出现没3秒就结束的原因所在,当时没管还以为
只是偶然。(因为我的BarChart初始化配置和数据刷新是分开的,由于数据刷新是异步的,动画启动后,数据还在请求,
所以设置数据后,其实动画已经执行了一段shij)
会不会release版本动画无效就是这个原因,但是release版本动画无效是必现,debug版本是偶现,这也说不通啊。
既然找到问题可能的原因了。解决办法自然也就有了。先解决这个问题bug再说吧。
很简单,上面的方法是在初始化BarChart的时候调用的,只要改到数据请求成功后,刷新数据时调用启动动画方法即可。
barChart.setData(barData);barChart.invalidate();barChart.animateXY(3000, 3000);
然后发布release版本,最初的问题依然还在。
研究了半天,想到以前解决的一个问题也是类似的问题,就是debug版本可以使用的API到了release版本就不能调用了。
那肯定就是跟代码混淆有关系了。查看项目混淆文件proguard-project.txt发现确实没有给MPAndroidChart增加不需要混淆
的包和类。于是去查看官方demo,发现也没有。那就只能自己来了。查看源码发现该图表库的代码都是在com.github.mikephil包
下。那么就把整个把都增加避免混淆试试,在proguard-project.txt加入两行
-dontwarn com.github.mikephil.**-keep class com.github.mikephil.**{ *; }
重新发布版本安装后动画总算是起作用了。
- MpAndroidChart坑之release发布版本动画不起作用
- VS2008发布Release版本
- QT 发布release版本
- Qt发布Release版本注意事项
- MPAndroidChart设置setNoDataTextDescription不起作用
- 版本更新:FreeBSD 4.11-RELEASE发布
- 发布release版本的apk软件
- 发布release版本的apk软件
- 发布release版本的apk软件
- 如何使用VC6.0发布release版本
- mac下面发布 release版本apk
- AS不能发布release版本的解决方案
- 代码判断发布的是debug版本还是release版本
- IbatisNet支持2.0的版本Release 发布了
- VC++ 如何发布程序(即release版本程序)
- VC++ 如何发布程序(即release版本程序)
- VC发布release版本出现问题的解决方案!
- Skin++ VC6.0 Release版本发布问题解决方案
- mysql数据库索引的科普
- java设计模式之单例模式----个人笔记
- 对数据进行升序\降序排序
- 收藏网址
- luogu2341 [HAOI2006]受欢迎的牛
- MpAndroidChart坑之release发布版本动画不起作用
- Collection
- 在MAC中更改MySQL数据库密码
- Spring Batch Remote Partitioning(远程分区)简介
- 总结
- 前端学习(十六)元素的高度宽度决定
- 专用于SqlServer2005的高效分页存储过程(支持多字段任意排序,不要求排序字段唯一)
- LeetCode #475 Heaters
- java.io.IOException:FULL head