Animation2

AnimationDrawable

 

android.graphics.drawable.AnimationDrawable

 

Class OverviewAn object used to create frame-by-frame animations, defined by a series of Drawable objects, which can be used as a View object's background.

通过一系列可以绘制的对象,可以创建一帧一帧的动画的类,而且可以用作viewbackground

 

The simplest way to create a frame-by-frame animation is to define the animation in an XML file, placed in the res/drawable/ folder, and set it as the background to a View object. Then, call run() to start the animation.

创建frame动画的最最简单的方法是通过动画的xml文件(放在res/drawble下面),把它设置为一个view的背景,然后start该动画

An AnimationDrawable defined in XML consists of a single <animation-list> element, and a series of nested <item> tags. Each item defines a frame of the animation. See the example below.

AnimationDrawble可以定义xml根元素是<animation-list>子元素是一系列的<item>,每一个item都是每一个动画的一帧,看下面的例子

:

spin_animation.xml file in res/drawable/ folder

 

<!-- Animation frames are wheel0.png -- wheel5.png files inside the

 res/drawable/ folder -->

 <animation-list android:id="selected" android:oneshot="false">

    <item android:drawable="@drawable/wheel0" android:duration="50" />

    <item android:drawable="@drawable/wheel1" android:duration="50" />

    <item android:drawable="@drawable/wheel2" android:duration="50" />

    <item android:drawable="@drawable/wheel3" android:duration="50" />

    <item android:drawable="@drawable/wheel4" android:duration="50" />

    <item android:drawable="@drawable/wheel5" android:duration="50" />

 </animation-list>Here is the code to load and play this animation.

下面的是对动画的调用

 // Load the ImageView that will host the animation and

 // set its background to our AnimationDrawable XML resource.

 ImageView img = (ImageView)findViewById(R.id.spinning_wheel_image);

 img.setBackgroundResource(R.drawable.spin_animation);

 

 // Get the background, which has been compiled to an AnimationDrawable object.

 AnimationDrawable frameAnimation = (AnimationDrawable) img.getBackground();

 

 // Start the animation (looped playback by default).

 frameAnimation.start()

 

Summary

 

XML Attributes

Attribute Name

Related Method

Description

 

 

 

 

 

 

 

 

 

android:drawable

 

Reference to a drawable resource to use for the frame. 

Item的元素,指定当前帧的动画资源

 

 

 

 

 

 

 

 

 

android:duration

 

Amount of time (in milliseconds) to display this frame. 

一帧持续的时间

 

 

 

 

 

 

 

 

 

android:oneshot

 

If true, the animation will only run a single time and then stop. 

是否只播放一次,默认是true

 

 

 

 

 

 

 

 

 

android:variablePadding

 

If true, allows the drawable's padding to change based on the current state that is selected. 

可以更改动画资源的padding

 

 

 

 

 

 

 

 

 

android:visible

 

Provides initial visibility state of the drawable; the default value is false.

 

 

 

 

 

 

 

 

 

 

 

 

Public Constructors

 

AnimationDrawable()

 

 

 

 

 

 

 

 

 

 

Public Methods

void

addFrame(Drawable frame, int duration)

Add a frame to the animation

增加一帧

 

 

 

 

 

 

 

 

 

 

int

getDuration(int i)

获得持续时间

 

 

 

 

 

 

 

 

 

 

Drawable

getFrame(int index)

 获得第几个frame

 

 

 

 

 

 

 

 

 

 

int

getNumberOfFrames()

获得几个frame

 

 

 

 

 

 

 

 

 

 

void

inflate(Resources r, XmlPullParser parser, AttributeSet attrs)

 

 

 

 

 

 

 

 

 

 

 

boolean

isOneShot()

是否循环播放

 

 

 

 

 

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值