Android动画机制与使用技巧

来源:互联网 发布:淘宝网折800女士皮草 编辑:程序博客网 时间:2024/06/05 04:30

1.Android View动画框架

实现原理是每次绘制视图时View所在的ViewGroup中的drawChild函数获取该View的Animation Transformation值,然后调用canvas.concat(transformToApply.getMatrix()),方法,通过矩阵运算完成画幁

 

1---5:视图动画

 

1.透明度动画

 

2.旋转动画

 

3.位移动画

 

4.缩放动画

 

5.动画集合

 

 

2.Android属性动画分析

1.ObjectAnimator

(1)以前的动画框架所产生的动画并不能改变事件响应的位置,它只是单纯地修改了显示。而属性动画不同,它真实的改变了一个View的属性,所以事件的响应的区域也同样发生了改变,这时候点击移动后的按钮,就会响应点击事件

 

 2.PropertyValuesHolder

(1)类似于动画中的AnimationSet  集合

 

3.ValueAnimator

(1)ObjectAnimator也是继承自ValueAnimator

(2)ValueAnimator本身不提供任何动画效果,它更像一个数值发生器,用来产生具有一定规律的数字,从而让调用者来控制动画的实现过程

(3)ValueAnimator的使用

 

4.动画事件的监听

(1)Android提供了一个AnimatorListenerAdapter来让我们选择要监听的事情,动画的start,repeat,end, cancel四个过程

 

5.AnimatorSet

(1)AnimatorSet不仅能同时作用多个属性动画效果,同时也能实现更为精确的顺序控制

 

6.在XML中使用属性动画

 

7.View的animate方法

 

3.Android布局动画

1.布局动画是指作用于ViewGroup上,给ViewGroup增加View时添加一个动画过渡效果

 

2.http://www.it165.net/pro/html/201505/41748.html

 

 

4.Interpolators(插值器)

1.通过插值器,可以定义动画变换速率,类似于物理的加速度

 

5.自定义动画

****

 

 

6.Android 5.X SVG 矢量动画机制

 

 

 

 

 

 

 

7.Android动画特效

1.灵动菜单

(1)点击红点,展开菜单,并带有一个缓冲的过渡动画

(2)因为具有用户交互性,所以不能使用视图动画而必须使用属性动画。

(3)代码-----

 

2.计时器动画

(1)熟悉ValueAnimator的使用---代码

 

3.下拉展开动画

(1)使用ValueAnimator

(2)将View的visibility属性由gone设置为visible

(3)代码---------

 

 ----------------Form《Android群英传》















 Android自定义控件三部曲文章索引:http://blog.csdn.net/harvic880925/article/details/50995268

0 0
原创粉丝点击