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

Android动画(1)--概述及FrameAnimation

2016-08-28 14:50 381 查看
最近看了一些研究Android动画的一些资料,为了方便自己和他人学习,现在在此做一些记录分析。

概述

Android动画的实现不得不谈一个类 ,叫Animation这些类为某个属性动画系统提供功能,它使你可以赋予任何类型的对象属性以动态特性。int,float,和十六进制颜色值这些被默认支持。你还可以通过指定一个客制的类型计算器,告诉系统如何对给给定的类型计算它的值,以此来为任何其他类型增加动画效果。 更多信息,参见动画章节向导 你可以设置多种不同类型的内插器(包含于 android.view.animation之中),指定关键帧,或者顺序或同时播放的动画组(通过AnimatorSet),以更进一步控制你的动画行为。

Animation可以分为ViewAnimation和Property Animation,当然,View的Animation又分为帧动画和补间动画。为了实现动画效果,我们不仅可以使用Animation这个类,还可以使用自定义view来实现相关功能

View Animation(Tween Animation)只能支持简单的缩放、平移、旋转、透明度基本的动画,且有一定的局限性。
Frame Animation (Drawable Animation)使用Animation-list将一串drawable进行排列,ViewAnimation的一种形式
Property Animation通过动画的方式改变对象的属性了

帧动画(Frame Aniamtion )

帧动画的实现比较简单,有点类似连环画一样,是将一系列drawable串起来的动画形式

<animation-list xmlns:android="http://schemas.android.com/apk/res/android"
android:oneshot="false">

<item
android:drawable="@mipmap/animation1"
android:duration="150"></item>
<item
android:drawable="@mipmap/animation2"
android:duration="150"></item>
<item
android:drawable="@mipmap/animation3"
android:duration="150"></item>
<item
android:drawable="@mipmap/animation4"
android:duration="150"></item>
<item
android:drawable="@mipmap/animation5"
android:duration="150"></item>
<item
android:drawable="@mipmap/animation6"
android:duration="150"></item>
<item
android:drawable="@mipmap/animation7"
android:duration="150"></item>
<item
android:drawable="@mipmap/animation8"
android:duration="150"></item>
</animation-list>


根标签为animation-list,其中oneshot代表着是否只展示一遍,设置为false会不停的循环播放动画
根标签下,通过item标签对动画中的每一个图片进行声明
android:duration 表示展示所用的该图片的时间长度


动画的使用方法

1,将文件创建在Drawable目录下

2,代码中引用

imgPic.setImageResource(R.drawable.animation);
//给动画资源赋值
animationDrawable = (AnimationDrawable) imgPic.getDrawable();

//动画开始
animationDrawable.start();//开始
//动画结束
animationDrawable.stop(); //停止
就是这么简单


使用注意

此方法小概率会导致OOM,不推荐使用



这一节就写到这里,下一节,我们来介绍View Animation的。Tween animation,请持续关注,如有不足,欢迎讨论交流,共同进步

项目的github例子地址为:

https://github.com/litianyuan1111/AndroidAnimation
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  android 动画 Animation