Andorid帧动画AnimationDrawable 基础使用

37 篇文章 0 订阅

    今天学习了Android帧动画AnimationDrawable的使用方法,以下借助一个例子,基本说明一下其基本使用方法,以便日后查看。先放出学习视频的地址:http://e-learning.51cto.com/video/127649

<?xml version="1.0" encoding="utf-8"?>
<animation-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:drawable="@drawable/img0" android:duration="300"/>
    <item android:drawable="@drawable/img1" android:duration="100"/>
    <item android:drawable="@drawable/img2" android:duration="200"/>
    <item android:drawable="@drawable/img3" android:duration="100"/>
    <item android:drawable="@drawable/img4" android:duration="100"/>

</animation-list>

      首先我们要将要创建的帧动画的每一帧图片放到drawable文件夹下,如果分辨率较高就必须放到drawable-xhdpi 或者更高的分辨率文件夹下。然后创建和上面我所给出的一个XML文件。这个文件也是在相应的drawble文件夹下创建。android drawable 属性要填的是这一帧的图片位置,android duration是间隔时间,单位是毫秒。

package com.example.thinkpad.animation;

import android.graphics.drawable.AnimationDrawable;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.view.animation.Animation;
import android.widget.ImageView;

public class MainActivity extends AppCompatActivity {
    AnimationDrawable animation;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        animation=(AnimationDrawable) getResources().getDrawable(R.drawable.anitmation_test);
        ImageView imageView=(ImageView) findViewById(R.id.animation);
        imageView.setBackground(animation);
    }
    public void Start(View v){
        animation.setOneShot(false);
        animation.start();
    }
    public  void Stop(View v){
        if(animation.isRunning()){
            animation.stop();
        }
    }
}

      首先要在主活动里建一个AnimationDrawable对象然后为其赋值(如上代码)。然后将ImageView的backgound设置为该对象。启动方法 用该对象的.start()方法了,setOneShot()是来设置是否只播放一次的,默认为true即是只播放一次,可以设置false让动画循环播放。而.stop()则是停止动画播放方法。

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值