对于传统动画,Android提供了两类动画,即Tween(补间动画)和Frame(帧动画)。Tween动画提供了四种动画形式,即AlphaAnimation(渐变动画)、RotateAnimation(旋转动画)、ScaleAnimation(尺寸动画)、TranslateAnimation(位移动画),当然这些动画可以随意进行组合成组合动画AnimationSet。对于帧动画比较好理解,类似动画片的原理,一张张图片按照某种规则进行排序,然后按照一定速度切换起来,由于人眼的视觉暂留特性就会在大脑中形成连贯的动画画面了,电影院中的电影就是这种形式的动画。
下面对AlphaAnimation的用法进行讲解:
public class
AlphaAnimation
extends Animation
java.lang.Object
↳ android.view.animation.Animation
↳ android.view.animation.AlphaAnimation
AlphaAnimation继承自Animation类,常用构造方法如下:
AlphaAnimation(float fromAlpha, float toAlpha)
需要传入两个参数,第一个是起始透明度值,第二个是结束透明度值,取值一般在0-1之间。每一种补间动画都可以通过两种方式实现,一种代码实现,另一种是引入xml文件实现,下面分别作介绍。
通过代码实现
首先看一个实例:
1.布局文件(activity_main):
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context="demo.androidwar.com.animation.MainActivity">
<ImageView
android:id="@+id/imageview"
android:layout_width="100dp"
android:layout_height="100dp"
android:layout_gravity="center"
android:layout_margin="10dp"
android:src=