在Android系统中,提供了两种动画框架:
1)View Animation(视图动画),而View Animation 里面又包含了下面两种模式
1.1)Tween Animation (也称之为View Animation,狭义的,不过现在官方也将之为View Animation了)
1.2)Frame Animation (也称之为Drawable Animation)
2)Property Animation(属性动画),这是在Android 3.0(API Level 11)之后才支持的框架。
所以,不考虑层次,只考虑实现,Android中就存在以下三种动画框架:
1)View Animation
2)Drawable Animation
3)Property Animation
今天我们就来讲一下View Animation(Tween Animation)的用法,然后最后总结一下关于View Animation 的优缺点。
简单地说,View Animation提供了一些在View上简单的动画效果,包括Tranlsate(平移),Rotate(旋转),Scale(缩放)和 Alpha(透明)这几种动画效果。
我们先来看一下效果图:
简单说明一下:
1)前面四个按钮分别代表了四种效果,点击执行对应的效果
2)如果fromXml被选中的话,表明效果是从xml加载的,如果没有选中,则是在Java中定义的
3)每种效果都可以通过Interpolator按钮来选择对应的Interpolator,这里只简单用了五种插值器。
4)Set为了方便展示,没有添加Alpha的效果,其它三种都加了,可以通过下面的Sequence和simultaneous单选按钮来选择是顺序播放还是同时播放各种效果。
下面我们说说View Animation都是怎么实现的。
View Animation的实现方式有两种:一是在XML中定义;二是在Java 代码中定义
XML 定义
1. Scale(缩放)
首先我们要先在 res/amin/中创建一个定义动画的xml文件,就叫transform.xml吧(这里要注意,关于View Animation的动画效果,都是要放在 /res/anim 路径下的) 代码如下:
<?xml version="1.0" encoding="utf-8"?>
<scale xmlns:android