前言
自己从事Android这个工作,但是很少写这样的帖子。然后想把自己学习到的点点滴滴都记录下来然后分享给大家。
Android中的动画
首先我们知道Android中的动画有传统动画和属性动画,传统的动画就是我们这里的(帧动画和补间动画)。今天就像大家介绍下帧动画。
1、帧动画
帧动画其实就可以理解为把多张连续的图片一帧一帧的播放出来,就像GIF,或者有点像最早的电影一样,其实是图片只是加快了切换的速度在视觉上就像电影一样。这种动画比较依赖UI。
我们先来看一下项目的结构
在res文件的drawable里面创建一个xml文件,文件名字看个人的喜好。我这里放的图片是在网上随便找的图片。
让我们 看看animation里面是怎么写的吧
<animation-list xmlns:android="http://schemas.android.com/apk/res/android"
android:oneshot="false">
<item android:drawable="@drawable/a" android:duration="50"></item>
<item android:drawable="@drawable/b" android:duration="50"></item>
<item android:drawable="@drawable/c" android:duration="50"></item>
<item android:drawable="@drawable/d" android:duration="50"></item>
<item android:drawable="@drawable/e" android:duration="50"></item>
<item android:drawable="@drawable/f" android:duration="50"></item>
<item android:drawable="@drawable/g" android:duration="50"></item>
<item android:drawable="@drawable/h" android:duration="50"></item>
<item android:drawable="@drawable/i" android:duration="50"></item>
<item android:drawable="@drawable/j" android:duration="50"></item>
<item android:drawable="@drawable/k" android:duration="50"></item>
<item android:drawable="@drawable/l" android:duration="50"></item>
<item android:drawable="@drawable/m" android:duration="50"></item>
<item android:drawable="@drawable/n" android:duration="50"></item>
<item android:drawable="@drawable/o" android:duration="50"></item>
</animation-list>
drawable里面就是放你的图片,duration每张图片执行的时间。
android:oneshot=”false”这个的意思是循环 false无限循环 true不循环
再来看看xml的布局是怎么的,其实就很简单
<ImageView
android:id="@+id/image"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/animation"/>
就是一个ImageView在他的background里面来接收刚刚的动画animation
再来看看MainActivity中
img = (ImageView) findViewById(R.id.image);
AnimationDrawable animationDrawable = (AnimationDrawable) img.getBackground();
//animationDrawable.setOneShot(false);
animationDrawable.start();
这个地方也可以通过代码来设置是否无限循环。
这一篇就占时先说的这里。