Frame动画像gif画画,通过一些静态的图片,以实现动画效果。

Android sdk该AnimationDrawable就是专门针对Frame动画,当然Frame动画也可在java代码或者xml中写,可是提倡大家还是在xml中写,先上个效果图。

<span style="font-size:18px;"><?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/market_loading_01"
android:duration="100"/>
<item
android:drawable="@drawable/market_loading_02"
android:duration="100"/>
<item
android:drawable="@drawable/market_loading_03"
android:duration="100"/>
<item
android:drawable="@drawable/market_loading_04"
android:duration="100"/>
<item
android:drawable="@drawable/market_loading_05"
android:duration="100"/>
<item
android:drawable="@drawable/market_loading_06"
android:duration="100"/>
<item
android:drawable="@drawable/market_loading_07"
android:duration="100"/>
<item
android:drawable="@drawable/market_loading_08"
android:duration="100"/>
<item
android:drawable="@drawable/market_loading_09"
android:duration="100"/>
<item
android:drawable="@drawable/market_loading_10"
android:duration="100"/>
<item
android:drawable="@drawable/market_loading_11"
android:duration="100"/>
<item
android:drawable="@drawable/market_loading_12"
android:duration="100"/> </animation-list></span>

Frame动画在xml中的根节点是<animation-list>当中的oneshot=false是循环播放,为true的话则播放到最后一张图片就会停止播放,在java中调用

ImageView imageView;
AnimationDrawable animationDrawable; protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
imageView = (ImageView) findViewById(R.id.image);
imageView.setBackgroundResource(R.drawable.drawable_progress);
animationDrawable = (AnimationDrawable) imageView.getBackground();
animationDrawable.start();

由于Frame 动画是有一堆静态图构成的所以,能够当成background。

用java代码写的话

		  AnimationDrawable animationDrawable2 = new AnimationDrawable();
Drawable drawable = getResources().getDrawable(R.drawable.fengjing_1);
Drawable drawable2 = getResources().getDrawable(R.drawable.fengjing_2);
Drawable drawable3 = getResources().getDrawable(R.drawable.fengjing_3);
animationDrawable2.addFrame(drawable, 1000);
animationDrawable2.addFrame(drawable2, 1000);
animationDrawable2.addFrame(drawable3, 1000);
animationDrawable2.setOneShot(false);
imageView.setBackgroundDrawable(animationDrawable2);
animationDrawable2.start();

恩。。就是这样了,Frame 动画了解到这已经差点儿相同了。

项目源代码

版权声明:本文博客原创文章,博客,未经同意,不得转载。

Android 动画具体解释Frame动画 (Drawable Animation)的更多相关文章

  1. Android动画主要包含补间动画(Tween)View Animation、帧动画(Frame)Drawable Animation、以及属性动画Property Animation

    程序运行效果图: Android动画主要包含补间动画(Tween)View Animation.帧动画(Frame)Drawable Animation.以及属性动画Property Animatio ...

  2. Android图文具体解释属性动画

    Android中的动画分为视图动画(View Animation).属性动画(Property Animation)以及Drawable动画.从Android 3.0(API Level 11)開始. ...

  3. Android 动画具体解释View动画

    为了让用户更舒适的在某些情况下,利用动画是那么非常有必要的.Android在3.0一旦支持两种动画Tween动漫Frame动画.Tween动画支持简单的平移,缩放,旋转,渐变.Frame动画就像Gif ...

  4. android动画具体解释四 创建动画

    使用ValueAnimator进行动画 通过指定一些int, float或color等类型的值的集合.ValueAnimator 使你能够对这些类型的值进行动画.你需通过调用ValueAnimator ...

  5. android动画具体解释二 属性动画原理

    property动画是一个强大的框架,它差点儿能使你动画不论什么东西. 你能够定义一个动画来改变对象的不论什么属性,不论其是否被绘制于屏幕之上. 一个属性动画在一定时间内多次改变一个属性(对象的一个字 ...

  6. 动画_ _ Android应用开发之所有动画使用详解

    转载: http://blog.csdn.net/yanbober/article/details/46481171 题外话:有段时间没有更新博客了,这篇文章也是之前写了一半一直放在草稿箱,今天抽空把 ...

  7. Android应用开发之所有动画使用详解

    题外话:有段时间没有更新博客了,这篇文章也是之前写了一半一直放在草稿箱,今天抽空把剩余的补上的.消失的这段时间真的好忙,节奏一下子有些适应不过来,早晨七点四十就得醒来,晚上九点四十才准备下班,好像最近 ...

  8. Android animation学习笔记之view/drawable animation

    前一章中总结了android animation中property animation的知识和用法,这一章总结View animation和Drawable animation的有关知识: View ...

  9. Android动画总结#补间动画(Tween Animation/View Animation) #帧动画(Frame Animation/Drawable Animation)#属性动画(PropertyAnimation)

    1.共有三种动画,英文名字多种叫法如下 第一种动画:补间动画(Tween Animation/View Animation) 四个:RotateAnimation旋转. AlphaAnimation透 ...

随机推荐

  1. 机器学习01-kNN邻近算法

    k-近邻算法 概述:k-近邻算法採用測量不同特征值之间的距离方法进行分类 长处:精度高.对于异常值不敏感.无数据输入假定 缺点:计算复杂度高,空间复杂度高,而且它没有办法各处基础数据的一些内部信息数据 ...

  2. The trust relationship between this workstation and the primary domain failed(断网可以登进来)(正确的解决方式用管理员登进去 :退域再加域)

    The trust relationship between this workstation and the primary domain failed(断网可以登进来)(正确的解决方式用管理员登进 ...

  3. VS2008的C++TR1库已经支持正则表达式

    作者:朱金灿 来源:http://blog.csdn.net/clever101 发现VS2008的C++ TR1库已经支持正则表达式了(注意装了VS 2008sp1采用TR1库的).下面简单做个测试 ...

  4. RFC chinese

    rfc专业性强,现实中不可能有好的全的rfc的翻译 尝试上在github上搜索 https://github.com/tidyjiang8/6lowpan-rfcs-chinese 诚如作者所说: 在 ...

  5. tig install ncursesw

    ./configure --prefix=/home/xxx/.local/ --with-ncursesw make[xxx$ ldd src/tig linux-vdso.so.1 => ( ...

  6. D3D 点列练习

    画四个点在窗体. #pragma once #pragma comment(lib,"d3d9.lib") #pragma comment(lib,"d3dx9.lib& ...

  7. IT忍者神龟之Hibernat持久化对象-数据表映射配置回想

    1.持久化对象POJO编写规则: 1) 有空參public构造器: 2) 提供标识属性.映射数据表主键: 3) 属性提供setter和getter方法. 4) 属性使用基本数据类型的包装类型.基本类型 ...

  8. signed 与 unsigned 有符号和无符号数

    unsigned int a = 0; unsigned int b = -1; // b 为 0xffffffff unsigned int c = a - 1; // c 为 0xffffffff

  9. MVC 设置项目默认起始页和多级目录的路由配置

    我们新建一个MVC的项目 默认的路由是这样的,但是由于一些需求,我们需要对Controllers按照一些规则分类. 比如说我们在Controllers下面建了一个School的文件夹,然后建了一个St ...

  10. 使用Fernflower 比较准确的反编译整个java项目

    以前一直使用jd-gui.exe  ,都说是最好用的,但是编译总是有问题,还得修改,使用idea 后,感觉反编译的相当好,看注释是 Fernflower,然后参考 http://the.bytecod ...