Q1:Android中有哪几种类型的动画?
Q2:帧动画在使用时需要注意什么?
Q3:View动画和属性动画的区别?
Q4:View动画为何不能真正改变View的位置?而属性动画为何可以?
Q5:属性动画插值器和估值器的作用?
Q1:Android中有哪几种类型的动画?
- View动画(View Animation)/补间动画(Tween animation)
- 自定义View动画
- 布局动画
- Activity切换动画
- 逐帧动画(Drawable Animation)
- 属性动画(Property Animation)
Q2:帧动画在使用时需要注意什么?
Q3:View动画和属性动画的区别?
Android系统提供了两个动画框架:属性动画框架和View动画框架。 两个动画框架都是可行的选项,但是属性动画框架通常是首选的使用方法,因为它更灵活,并提供更多的功能。 除了这两个框架,还可以使用Drawable动画(即逐帧动画,AnimationDrawable),它允许你加载Drawable资源并逐帧地显示它们。
1> View动画框架
View动画框架是旧的框架,只能用于Views。 比较容易设置和能满足许多应用程序的需要。View动画框架中一共提供了AlphaAnimation(透明度动画)、RotateAnimation(旋转动画)、ScaleAnimation(缩放动画)、TranslateAnimation(平移动画)四种类型的补间动画;并且View动画框架还提供了动画集合类(AnimationSet),通过动画集合类(AnimationSet)可以将多个补间动画以组合的形式显示出来。
2> 属性动画框架
与属性动画相比View动画存在一个缺陷,View动画改变的只是View的显示,而没有改变View的响应区域,并且View动画只能对View做四种类型的补间动画。因此Google在Android3.0(API级别11)及其后续版本中添加了属性动画框架,从名称中就可以知道只要某个类具有属性(即该类含有某个字段的set和get方法),那么属性动画框架就可以对该类的对象进行动画操作(其实就是通过反射技术来获取和执行属性的get,set方法),同样属性动画框架还提供了动画集合类(AnimatorSet),通过动画集合类(AnimatorSet)可以将多个属性动画以组合的形式显示出来。