`
hutuanle
  • 浏览: 9652 次
文章分类
社区版块
存档分类
最新评论

Android 用Animation-list实现逐帧动画

 
阅读更多

摘自:http://www.open-open.com/lib/view/open1344504946405.html

第一步:先上图片素材,以下素材放到res/drawable目录下:

图片素材:

Android 用Animation-list实现逐帧动画

Android 用Animation-list实现逐帧动画

Android 用Animation-list实现逐帧动画

Android 用Animation-list实现逐帧动画

Android 用Animation-list实现逐帧动画

Android 用Animation-list实现逐帧动画

文件名称:

icon1.png

icon1.png

icon1.png

icon1.png

icon1.png

icon1.png

第二步:上动画Animation-list帧布局文件,有2个,一个是按顺序显示动画,一个是倒序显示动画,文件存放在res/drawable目录下

顺序显示动画文件:animation1.xml

01 <?xmlversion="1.0"encoding="utf-8"?>
02 <!--
03 根标签为animation-list,其中oneshot代表着是否只展示一遍,设置为false会不停的循环播放动画
04 根标签下,通过item标签对动画中的每一个图片进行声明
05 android:duration 表示展示所用的该图片的时间长度
06 -->
07 <animation-list
08 xmlns:android="http://schemas.android.com/apk/res/android"
09 android:oneshot="true"
10 >
11 <itemandroid:drawable="@drawable/icon1"android:duration="150"></item>
12 <itemandroid:drawable="@drawable/icon2"android:duration="150"></item>
13 <itemandroid:drawable="@drawable/icon3"android:duration="150"></item>
14 <itemandroid:drawable="@drawable/icon4"android:duration="150"></item>
15 <itemandroid:drawable="@drawable/icon5"android:duration="150"></item>
16 <itemandroid:drawable="@drawable/icon6"android:duration="150"></item>
17 </animation-list>

倒序显示动画文件:animation2.xml

01 <?xmlversion="1.0"encoding="utf-8"?>
02 <!--
03 根标签为animation-list,其中oneshot代表着是否只展示一遍,设置为false会不停的循环播放动画
04 根标签下,通过item标签对动画中的每一个图片进行声明
05 android:duration 表示展示所用的该图片的时间长度
06 -->
07 <animation-list
08 xmlns:android="http://schemas.android.com/apk/res/android"
09 android:oneshot="true"
10 >
11 <itemandroid:drawable="@drawable/icon6"android:duration="150"></item>
12 <itemandroid:drawable="@drawable/icon5"android:duration="150"></item>
13 <itemandroid:drawable="@drawable/icon4"android:duration="150"></item>
14 <itemandroid:drawable="@drawable/icon3"android:duration="150"></item>
15 <itemandroid:drawable="@drawable/icon2"android:duration="150"></item>
16 <itemandroid:drawable="@drawable/icon1"android:duration="150"></item>
17 </animation-list>


第三步:上布局文件,放在res/layout目录下,文件名main.xml

01 <?xmlversion="1.0"encoding="utf-8"?>
02 <LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"
03 android:layout_width="fill_parent"
04 android:layout_height="fill_parent"
05 android:orientation="vertical">
06
07 <ImageViewandroid:id="@+id/animationIV"
08 android:layout_width="wrap_content"
09 android:layout_height="wrap_content"
10 android:padding="5px"
11 android:src="@drawable/animation1"/>
12
13 <Buttonandroid:id="@+id/buttonA"
14 android:layout_width="wrap_content"
15 android:layout_height="wrap_content"
16 android:padding="5px"
17 android:text="顺序显示"/>
18
19 <Buttonandroid:id="@+id/buttonB"
20 android:layout_width="wrap_content"
21 android:layout_height="wrap_content"
22 android:padding="5px"
23 android:text="停止"/>
24
25 <Buttonandroid:id="@+id/buttonC"
26 android:layout_width="wrap_content"
27 android:layout_height="wrap_content"
28 android:padding="5px"
29 android:text="倒序显示"/>
30
31 </LinearLayout>

第四步:上Activity文件,文件名:MainActivity.java

01 packageorg.shuxiang.test;
02
03 importandroid.app.Activity;
04 importandroid.graphics.drawable.AnimationDrawable;
05
06 importandroid.os.Bundle;
07 importandroid.view.View;
08 importandroid.view.View.OnClickListener;
09 importandroid.view.Window;
10 importandroid.widget.Button;
11 importandroid.widget.ImageView;
12
13 publicclassActivity10extendsActivity
14 {
15 privateImageView animationIV;
16 privateButton buttonA, buttonB, buttonC;
17 privateAnimationDrawable animationDrawable;
18 @Override
19 publicvoidonCreate(Bundle savedInstanceState) {
20 super.onCreate(savedInstanceState);
21 requestWindowFeature(Window.FEATURE_NO_TITLE);
22 setContentView(R.layout.test10);
23
24
25 animationIV = (ImageView) findViewById(R.id.animationIV);
26 buttonA = (Button) findViewById(R.id.buttonA);
27 buttonB = (Button) findViewById(R.id.buttonB);
28 buttonC = (Button) findViewById(R.id.buttonC);
29
30 buttonA.setOnClickListener(newOnClickListener()
31 {
32 @Override
33 publicvoidonClick(View v) {
34 // TODO Auto-generated method stub
35 animationIV.setImageResource(R.drawable.animation1);
36 animationDrawable = (AnimationDrawable) animationIV.getDrawable();
37 animationDrawable.start();
38 }
39
40 });
41
42 buttonB.setOnClickListener(newOnClickListener()
43 {
44 @Override
45 publicvoidonClick(View v) {
46 // TODO Auto-generated method stub
47 animationDrawable = (AnimationDrawable) animationIV.getDrawable();
48 animationDrawable.stop();
49 }
50
51 });
52
53 buttonC.setOnClickListener(newOnClickListener()
54 {
55 @Override
56 publicvoidonClick(View v) {
57 // TODO Auto-generated method stub
58 animationIV.setImageResource(R.drawable.animation2);
59 animationDrawable = (AnimationDrawable) animationIV.getDrawable();
60 animationDrawable.start();
61 }
62 });
63 }
64 }

分享到:
评论

相关推荐

    Android 用Animation-list实现逐帧动画(WIFI)信号图

    Android 用Animation-list实现逐帧动画(WIFI)信号图,代码精简,效果明显,有需要的同学自行下载吧,是学习逐帧动画的好DEMO

    Animation-list实现逐帧动画(Android).zip

    Animation-lis实现逐帧动画(Android代码)

    使用Animation-list实现等待加载动画效果

    使用Animation-list实现等待加载动画效果,简单demo,适合新手学习使用Animation-list

    Android利用animation-list实现帧动画

    本文实例为大家分享了利用animation-list实现帧动画的具体代码,供大家参考,具体内容如下 将要顺序播放的图片放在资源目录下 再drawable目录下新建animation1文件和animation2文件 一个是按顺序显示动画,一个是...

    android之animation-list实现的简单粘稠加载效果使用demo

    view的简单动画animation-list,一个粘稠的动画集合

    Android程序技术:动画逐帧动画.pptx

    打开Android Studio软件,找到目录res下面子目录drawable目录,将动画图片素材拷贝到该目录下,本节课中,图片素材为img01至img06。;将鼠标选中drawable目录,点击鼠标右键。;在打开的 New Drableable Resource File...

    详解android 中animation-list 动画的应用

    本篇文章主要介绍了详解android 中animation-list 动画的应用,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

    AnimationDrawableDemo

    Android 用Animation-list实现逐帧动画,模拟环境系统动画。首次点击时,风扇转动,再次点击时风扇关闭。实现"当温度大于设定值时,冷风自动开启;温度低于设定值时,暖风自动开启"。

    Android animation_list demo,imageview实现动画效果

    Android 使用animation_list 实现imageview 动画效果

    Android逐帧动画实现代码

    逐帧动画适合实现比较简单的动画效果,如果要实现复杂动画不太建议使用逐帧动画。 xml方式实现: step 1 : 在res/drawable目录下一个文件sample_animlist.xml: &lt;?xml version=1.0 encoding=utf-8?&gt; &lt;...

    Android 加载动画的实现

    Android加载动画的简单实现,&lt;?xml version="1.0" encoding="utf-8"?&gt; &lt;animation-list xmlns:android="http://schemas.android.com/apk/res/android" android: &lt;item android:duration="130" android:...

    高仿墨迹天气引导界面.zip

    第二个界面最上面的“极小安装”动画和最下面的箭头动画和第一个图中的一样,不做过多介绍第三个界面中间云移动效果使用了平移动画,火箭喷气效果使用了animation-list的逐帧动画。第四个界面中的“墨迹天气3.0”...

    Android编程之简单逐帧动画Frame的实现方法

    本文实例讲述了Android编程之简单逐帧动画Frame的实现方法。分享给大家供大家参考,具体如下: 1、逐帧动画 即是通过播放预先排序好的图片来实现动态的画面,感觉像是放电影。 2、实现步骤: ① 在工程里面导入要...

    Android动画

    animation-list animation-list animation-list

    Android动画系列之帧动画和补间动画的示例代码

    Android 提供三种动画:帧动画、补间动画和属性动画,本篇文章介绍帧动画以及补间动画的使用,属性动画的使用将在后面的文章中分享,那就来复习一下这两种动画的使用吧。 FrameAnimation FrameAnimation 即逐帧动画...

    Android 使用帧动画内存溢出解决方案

    最近在项目遇到的动画效果不好实现,就让UI切成图,采用帧动画实现效果,但是在使用animation-list时,图片也就11张,每张图片大概560k左右,结果内存溢出,崩溃 了,自己用了三张都崩溃;拿代码说; 1.anin_searh....

    android 帧动画,补间动画,属性动画的简单总结

    帧动画——FrameAnimation 将一系列图片有序播放,形成动画的效果。其本质是一个Drawable,是一系列图片的集合,本身可以当做一个图片一样使用 在Drawable文件夹下,创建animation-list为根节点的资源文件 ...

Global site tag (gtag.js) - Google Analytics