android学习笔记——android动画Animation的讲解

android动画的详解可以参考这里:http://www.360doc.com/content/13/0102/22/6541311_257754535.shtml
这里详细介绍了一下动画详解,非常详尽。回头看自己写的,真是shit!

有必要更新一下这篇文档了,我们先介绍一下

一、Animations介绍

Animations是一个实现android UI界面动画效果的APIAnimations提供了一系列的动画效果,可以进行旋转、缩放、淡入淡出等,这些效果可以应用在绝大多数的控件中。 

二、Animations的分类

Animations从总体上可以分为两大类:

1.Tweened Animations:该类Animations提供了旋转、移动、伸展和淡出等效果。Alpha——淡入淡出,Scale——缩放效果,Rotate——旋转,Translate——移动效果。

2.Frame-by-frame Animations:这一类Animations可以创建一个Drawable序列,这些Drawable可以按照指定的时间间歇一个一个的显示。

 

三、Animations的使用方法(代码中使用)

Animations extends Object implements Cloneable 

 使用TweenedAnimations的步骤:

1.创建一个AnimationSet对象(Animation子类);

2.增加需要创建相应的Animation对象;

3.更加项目的需求,为Animation对象设置相应的数据;

4.Animatin对象添加到AnimationSet对象当中;

5.使用控件对象开始执行AnimationSet


  Tweened Animations的分类
  1、Alpha:淡入淡出效果
  2、Scale:缩放效果
  3、Rotate:旋转效果
  4、Translate:移动效果

 

Animation的四个子类:
  AlphaAnimation、TranslateAnimation、ScaleAnimation、RotateAnimation

下面我就来用代码展示一下怎么用
//需要用到一个AnimationSet的类,
AnimationSet animationSet =  new AnimationSet( true);
AlphaAnimation animation = new AlphaAnimation(0,1);
animation.setDuration( 10000);
ScaleAnimation animation1 = new ScaleAnimation(1,4,1,4);
animation1.setDuration( 5000);
TranslateAnimation animation2 = new TranslateAnimation(20,400,20,400);
animation2.setDuration( 5000);
//将多个Animation加到一起
animationSet.addAnimation(animation);
animationSet.addAnimation(animation1);
animationSet.addAnimation(animation2);
//最后给控件设置上
imageView.setAnimation(animationSet);

还可以在XML中编写好这些补间动画
<? xml version= "1.0"  encoding= "utf-8" ?>
< set  xmlns: android = "http://schemas.android.com/apk/res/android"
    android :interpolator= "@android:anim/accelerate_interpolator"
    android :shareInterpolator= "true">
    < alpha
        android :fromAlpha= "0.2"
        android :toAlpha= "1.0"
        android :duration= "2000"
       
/>
<translate
    android:fromXDelta="0%"
    android:toXDelta="100%"
    android:fromYDelta="0%"
    android:toYDelta="100%"
    android:duration="3000"/>

</set>

然后需要在java代码要做的工作:
//用xml来使用Animations动画
     Animation animation = AnimationUtils. loadAnimation(MainActivity. this,R.anim. translate);
imageView.setAnimation(animation);


上述只是介绍了补间动画,并没有介绍帧动画。可以参考上方给出的连接,仔细阅读,非常非常的详尽!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值