Android属性动画---Property Animation(二)
2012-07-03 07:50
309 查看
本文译自:http://developer.android.com/guide/topics/graphics/prop-animation.html
属性动画与视图动画的差异
视图动画提供了只让View对象具有动画效果的能力,因此想要非View对象具有动画效果,就得自己实现动画效果的代码。事实上,视图动画系统也受到了限制,它只会把很少的View对象的特征暴露给动画效果,如例如,View对象的缩放和旋转,但是没有背景色,等等。
视图动画的另一个缺点是,它仅能够在绘制View对象时被修改,并且不是实际的View对象本身。例如,如果要让一个按钮,以动画的形式穿越屏幕,按钮正确的绘制了,但是点击按钮的实际位置却不会改变,因此必须自己来实现这种处理逻辑。
在属性动画系统中,这些现在被彻底删除,并且能够让任何对象的任何属性具有动画效果(View对象和非View对象),并且能够实际修改对象自身。属性动画在动画执行方面也更加健壮。在高层次上,可以给想要动画效果的属性分配动画执行器,如颜色、位置、尺寸以及能够定义的动画特性(如插值和多个动画的同步等)。
但是,视图动画系统需要较少的创建时间和编写较少的代码。如果视图动画能够满足需求,或者既存的代码已经做了想要完成的动画效果,就不需要使用属性动画效果了。针对不同的情况来选择使用这两种不同的动画系统。
属性动画与视图动画的差异
视图动画提供了只让View对象具有动画效果的能力,因此想要非View对象具有动画效果,就得自己实现动画效果的代码。事实上,视图动画系统也受到了限制,它只会把很少的View对象的特征暴露给动画效果,如例如,View对象的缩放和旋转,但是没有背景色,等等。
视图动画的另一个缺点是,它仅能够在绘制View对象时被修改,并且不是实际的View对象本身。例如,如果要让一个按钮,以动画的形式穿越屏幕,按钮正确的绘制了,但是点击按钮的实际位置却不会改变,因此必须自己来实现这种处理逻辑。
在属性动画系统中,这些现在被彻底删除,并且能够让任何对象的任何属性具有动画效果(View对象和非View对象),并且能够实际修改对象自身。属性动画在动画执行方面也更加健壮。在高层次上,可以给想要动画效果的属性分配动画执行器,如颜色、位置、尺寸以及能够定义的动画特性(如插值和多个动画的同步等)。
但是,视图动画系统需要较少的创建时间和编写较少的代码。如果视图动画能够满足需求,或者既存的代码已经做了想要完成的动画效果,就不需要使用属性动画效果了。针对不同的情况来选择使用这两种不同的动画系统。
相关文章推荐
- android使用属性动画代替补间动画
- Android属性动画完全解析(中),ValueAnimator和ObjectAnimator的高级用法
- Android属性动画学习笔记(二)
- 布局动画 属性初始 android:animateLayoutChanges
- android属性动画代码小样
- Android 属性动画(Property Animation) 完全解析 (上)
- Android属性动画:动画流控制
- android ValueAnimator 属性动画的用法
- Android 属性动画(Property Animation) 完全解析 (上)
- Android属性动画完全解析(上),初识属性动画的基本用法
- Android 属性动画(Property Animation) 完全解析 (上)
- Android中Property Animation属性动画编写的实例教程
- Android属性动画完全解析(中),ValueAnimator和ObjectAnimator的高级用法
- 每日一学(十二)Android动画---属性动画(圆形菜单、扇形菜单)
- Android属性动画完全解析(下),Interpolator和ViewPropertyAnimator的用法
- Android属性动画深入分析
- Android属性动画完全解析(下),Interpolator和ViewPropertyAnimator的用法
- Android属性动画学习笔记(一)
- Android补间动画属性
- Android属性动画完全解析(上),初识属性动画的基本用法