Android动画效果animation

1、Tween 根据指定动画开始和结束时的对象属性(位置、Alpha值(透明度)、大小、角度等)以及动画播放的时间长度生成动画;

2、Frame 指定每一帧所播放的图片和时间长度。

建立动画的方法:

1、在项目的res文件夹下建立动画资源xml文件,自动加入项目的资源类R中,程序再从资源类中加载动画来使用;

2、直接在程序代码中建立动画对象并设置相关属性。

具体方法:

1、在res文件夹下新建anim文件夹,在anim文件夹下新建xml文件,选择set类型;

2、在xml文件中,新建动画类型标签,例如<scale ></scale>等等;

3、在程序代码中加载使用(rotate.xml):

Animation anim = AnimationUtils.loadAnimation(MainActivity.this, R.anim.rotate);

mBtn.startAnimation(anim);

或者在activity之间跳转时(第一个为退出动画,第二个为显示动画):

overridePendingTransition(R.anim.fade, R.anim.hold);

View Animation(Tween Animation)

用XML定义的动画放在/res/anim/文件夹内,XML文件的根元素可以为<alpha>,<scale>,<translate>,<rotate>,interpolator元素或<set>(表示以上几个动画的集合,set可以嵌套)。默认情况下,所有动画是同时进行的,可以通过startOffset属性设置各个动画的开始偏移(开始时间)来达到动画顺序播放的效果。

Tween 4中动画效果:


属性名称
属性值
说明

interpolator

@android:anim/accelerate_decelerate_interpolator
中间快前后慢
设置变化快慢
@android:anim/linear_interpolator

一样快

 

@android:anim/accelerate_interpolator
越来越快

 

@android:anim/decelerate_interpolator

越来越慢
startOffset
整数值

等待毫秒开始动画

duration

整数值

动画持续毫秒时间

1、Alpha:


属性名称
属性值
说明

fromAlpha

0~1

开始时透明度
toAlpha
0~1

结束时透明度

2、Scale


属性名称
属性值
说明

fromXScale

0~

开始时X方向大小比例,1以上代表放大
toXScale
0~

结束时X方向大小比例,1以上代表放大

pivotX

0~1
开始时图像的x坐标,0代表最左边,1代表最右边

3、Translate


属性名称
属性值
说明

fromXDelta
整数值
开始时x坐标的位移量
toXDelta
整数值

结束时x坐标的位移量

4、Rotate


属性名称
属性值
说明

fromDegrees

整数值

开始时角度
toDegrees
整数值

结束时角度

pivotX

0~1
开始时图像的x坐标,0代表最左边,1代表最右边

Drawable Animation(Frame Animation):
必须以<animation-list>为根元素,oneshot为true表示从头到尾只播放一次,为false表示重复播放,以<item>表示要轮换显示的图片,duration属性表示各项显示的时间。XML文件要在/res/drawable/目录下。

<?xml version="1.0" encoding="utf-8"?>
 <animation-list
     xmlns:android="http://schemas.android.com/apk/res/android"
     android:oneshot="false"
     >
    <item android:drawable="@drawable/dice01" android:duration="150"></item>
    <item android:drawable="@drawable/dice02" android:duration="150"></item>
    <item android:drawable="@drawable/dice03" android:duration="150"></item>
    <item android:drawable="@drawable/dice04" android:duration="150"></item>
    <item android:drawable="@drawable/dice05" android:duration="150"></item>
    <item android:drawable="@drawable/dice06" android:duration="150"></item>
 </animation-list>

  

程序中加载:

Resources res = getResources();

AnimationDrawable animDraw = (AnimationDrawable)res.getDrawable(R.drawable.anim_drawable);

或者直接代码建立:

AnimationDrawable animDraw = new AnimationDrawable();

animDraw.setOneShot(false);

Resources res = getResources();

animDraw.addFrame(res.getDrawable(R.drawable.img01), 100);

animDraw.addFrame(res.getDrawable(R.drawable.img02), 100);

播放动画:

ImgView.setImageDrawable(animDraw);

animDraw.start();

……

animDraw.stop();

时间: 2024-07-31 07:18:35

Android动画效果animation的相关文章

(四)Android动画开发---Animation动画效果详解

Android 使用Animation的具体操作方法我们将会在这篇文章中做一个详细的介绍.大家可以通过这里举出的代码进行解读,并从中了解到相关操作技巧,方便我们将来开发应用,并且加深对这一操作系统的理解程度. 在Android中,分别可以在xml中定义Animation,也可以在程序代码中定义. 动画类型 Android的animation由四种类型组成 XML中 alpha 渐变透明度动画效果 scale 渐变尺寸伸缩动画效果 translate 画面转换位置移动动画效果 rotate 画面转

Android动画效果之Frame Animation(逐帧动画)(二)(

前言: 上一篇介绍了Android的Tween Animation(补间动画) Android动画效果之Tween Animation(补间动画),今天来总结下Android的另外一种动画Frame Animation(逐帧动画). Frame Animation(逐帧动画): 逐帧动画(Frame-by-frame Animations)从字面上理解就是一帧挨着一帧的播放图片,就像放电影一样.和补间动画一样可以通过xml实现也可以通过java代码实现.接下来借助目前项目中的一个开奖的动画来总结

Android动画效果之初识Property Animation(属性动画)(三)

前言: 前面两篇介绍了Android的Tween Animation(补间动画) Android动画效果之Tween Animation(补间动画).Frame Animation(逐帧动画)Android动画效果之Frame Animation(逐帧动画)(二),其实总结前两个的根本目的就是为了学习今天的主角Property Animation(属性动画).其实在Android最早期只提供了前两种动画方式,在Android 3.0才引入了属性动画,谷歌为何要引入属性动画呢?今天我们来总结学习一

Android动画效果之Frame Animation(逐帧动画)

前言: 上一篇介绍了Android的Tween Animation(补间动画) Android动画效果之Tween Animation(补间动画),今天来总结下Android的另外一种动画Frame Animation(逐帧动画). 其他几种动画效果: Android动画效果之Tween Animation(补间动画) Android动画效果之Frame Animation(逐帧动画) Android动画效果之初识Property Animation(属性动画) Android动画效果之Prop

android动画效果编程基础--Android Animation

动画效果编程基础--Android Animation 动画类型 Android的animation由四种类型组成 XML中 alpha 渐变透明度动画效果 scale 渐变尺寸伸缩动画效果 translate 画面转换位置移动动画效果 rotate 画面旋转动画效果 JavaCode中 AlphaAnimation 渐变透明度动画效果 ScaleAnimation 渐变尺寸伸缩动画效果 TranslateAnimation 画面转换位置移动动画效果 RotateAnimation 画面旋转动画

Android动画效果——1.帧动画2.补间动画3.跳转画面(三)

Android--动画效果1.帧动画2.补间动画3.跳转画面 插值器类 xml属性值 说明 LinearInterpolator @android:anim/linear_interpolatorr 动画以均匀的速度改变. AccelerateInterpolator @android:anim/accelerate_interpolator 在动画开始时改变速度较慢,然后开始加速. AccelerateDecelerateInterpolator @android:anim/accelerat

Android动画效果translate、scale、alpha、rotate详解

动画类型 Android的animation由四种类型组成 XML中 alpha 渐变透明度动画效果 scale 渐变尺寸伸缩动画效果 translate 画面转换位置移动动画效果 rotate 画面转移旋转动画效果 JavaCode中 AlphaAnimation 渐变透明度动画效果 ScaleAnimation 渐变尺寸伸缩动画效果 TranslateAnimation 画面转换位置移动动画效果 RotateAnimation 画面转移旋转动画效果 Android动画模式 Animation

android 动画属性Animation

Animation 在android 程序当中很多时候要用到动画效果,而动画效果主要是Animation来实现的,API给出的解释: 其中包含4种动画效果 AlphaAnimation 渐变透明度 RotateAnimation 画面旋转 ScaleAnimation 渐变尺寸缩放 TranslateAnimation 位置移动 但如果你想把这些动画效果联合起来就需要用到一个类AnimationSet  动画集. 下面就对这几个类进行一个简单的解释: AlphaAnimation 的例子: 1

Android动画效果translate、scale、alpha、rotate

动画类型 Android的animation由四种类型组成 XML中 alpha 渐变透明度动画效果 scale 渐变尺寸伸缩动画效果 translate 画面转换位置移动动画效果 rotate 画面转移旋转动画效果 JavaCode中 AlphaAnimation 渐变透明度动画效果 ScaleAnimation 渐变尺寸伸缩动画效果 TranslateAnimation 画面转换位置移动动画效果 RotateAnimation 画面转移旋转动画效果 Android动画模式 Animation