android 100逐帧动画资源,Android中实现一个简单的逐帧动画(附代码下载)

场景

Android中的逐帧动画,就是由连续的一张张照片组成的动画。

效果

14ca5815fe70f8f28f8f4b060bb48e76.gif

3316939

注:

实现

首先准备一组不同表情的照片,放在res/drawable下,然后在此目录下新建动画资源文件fairy.xml

这里是逐帧动画,所以节点是animation-list 。

然后来到布局文件,将布局设置为LinearLayout并添加id属性,并且设置背景为上面添加的动画资源文件

然后来到对应的Activity,创建标识变量Flag,然后获取AnimationDrawable对象,并且为布局管理器添加单击事件。从而控制动画的停止和播放。

package com.badao.animationtest;

import androidx.appcompat.app.AppCompatActivity;

import android.graphics.drawable.AnimationDrawable;

import android.os.Bundle;

import android.view.View;

import android.widget.LinearLayout;public classMainActivity extends AppCompatActivity {private boolean flag = true;

@Overrideprotected voidonCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

LinearLayout linearLayout= (LinearLayout) findViewById(R.id.linearLayout); //获取布局管理器//获取AnimationDrawable对象

final AnimationDrawable anim=(AnimationDrawable) linearLayout.getBackground();

linearLayout.setOnClickListener(new View.OnClickListener() { //为布局管理器添加单击事件

@Overridepublic voidonClick(View v) {if(flag){

anim.start();//开始播放动画

flag=false;

}else{

anim.stop();//停止播放动画

flag=true;

}

}

});

}

}

代码下载

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值