Animator 关系
Animator 抽象类
1、AnimatorSet 子类
2、ValueAnimator 子类
1、ObjectAnimator 子类
2、TimeAnimator 子类
介绍几个开源动画库
1、2017年酷炫的动画库https://blog.csdn.net/lixuce1234/article/details/78188762
2、开源代码 按钮的动画
http://www.jcodecraeer.com/plus/list.php?tid=31&codecategory=1500
这个网站中有好多按钮的动画。比如收藏、点赞等,很多想要的效果都可以在这里找到。
我这次碰到的是关于收藏的按钮,http://www.jcodecraeer.com/a/opensource/2015/1009/3555.html
这个正好符合项目的需求,然后自己再重新整理了一下。感觉还是挺不错的。
开发中碰到的问题
1、RecycleView中使用动画
今天碰到的是在ReclclerView 中使用点击按钮收藏的功能,但是呢,动画没有生效,误以为是RecyclerView
导致的,后来打日志跟踪,发现是自己自定义的动画有问题。
小结:缩小问题的范围,才能看到本质,避免查找方向不对问题。
2、解决RecyclerView 刷新单行闪一下问题
方案一:
((SimpleItemAnimator)recyclerView.getItemAnimator()).setSupportsChangeAnimations(false);
设置禁止动画
方案二:
recyclerView.getItemAnimator().setChangeDuration(0);
设置动画的执行是时间为0
3、如何自定义控件
写自定义控件的时候,一定要考虑扩展性,而且要把基本的功能写全,避免后期的改动,当然有了扩展性,那么问题也不大。
尽量使用传参,灵活的修改一些属性
4、处理列表中显示动画
这是一个有意思的问题,就是呢,在列表中不刷新动画,但是呢点击的时候要显示动画。而在点击的时候是用刷新单行来做的。
那么这就会导致一个问题,刷整个列表也会有动画,看起来就有点怪。如何在刷整个列表不动画呢。
怎么解决上面的问题呢,在列表的适配器传入数据中加个是否动画的属性,点击的时候,改变这个属性,让他可以刷新。
如果是刷列表,那么使用默认属性,也就不展示动画。
怎么解决问题
1、处理逻辑问题
对于复杂业务的判断处理。我觉得更应该花些心思在算法上的学习,只有算法搞得透彻,那么对于编程
将有大大的好处。网上的耗子叔就是讲到了一定要学算法,对于后面的帮助还是很大的。
如何用更简单的方式来处理问题。多去思考,在做每一件事情都尽力做到最好。其实能力的提升就是
在这些当中提升的,只是我们总是好高骛远。以后会花心思研究做事方法。
2、态度
耐心,应该是写程序最大的优点了。如果能够沉住气,那么对于自己的编程将会大大的有帮助。
如果对你有一点点帮助,那是值得高兴的事。:)
我的csdn:http://blog.csdn.net/shenshizhong
我的简书:http://www.jianshu.com/u/345daf0211ad
我的github:https://github.com/shenshizhong/daily-update-note