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

最近看了一些研究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

阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qwer4755552/article/details/52345664
文章标签: android 动画 Animation
个人分类: Android动画
上一篇Android7.0更新一览,快来吃Nougat
下一篇Android动画(2)--TweenAnimation(补间动画)
想对作者说点什么? 我来说一句

actionscript概述及基础

2010年09月14日 258KB 下载

FrameAnimation

2013年04月02日 1.1MB 下载

没有更多推荐了,返回首页

关闭
关闭