您的位置:首页 > 移动开发 > Android开发

android动画的实现

2016-07-05 17:28 274 查看

android动画的实现

一: 从分类上讲,动画分为帧动画和补间动画。

1.android在3.0以前有四个类来实现补间动画:TranslationAnimation,ScaleAnimation,AlphaAnimation,RotateAnimation

2.实现帧动画的类:在xml中编写animation-list,然后用AnimationDrawable加载,调用start方法开启动画;

3.在android3.0之后谷歌定义的新的方式来实现补间动画:ObjectAnimator,我们通常将其称为属性动画。用法如下:

ObjectAnimator animator = ObjectAnimator.ofFloat(target, "translationX", values);
animator.setDuration(300);
animator.start();


4.然而由于ObjectAnimator是3.0之后出来的,早期的时候谷歌并没有兼容的方案,此时,有一位大神Jake Wharton,实现了兼容低版本的属性动画,这个类库就是NineOldAndroid,并且对其进行简化封装,提供的链式api的风格,如下;

ViewPropertyAnimator.animate(listView)
.translationX(100)
.scaleX(1.2f)
.alpha(0.8f)
.setDuration(500)
.start();


5.直到android4.4之后,谷歌才出了兼容低版本的属性动画,在v4包中ViewCompat类中,用法和ViewPropertyAnimator一模一样;

6.同时还有允许我们进行自定义动画的类在3.0之后出现,就是ValueAnimator;用法如下:

ValueAnimator valueAnimator = ValueAnimator.ofInt(srcint, decint);//完成srcint到decint的数值渐变
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: