欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

Android Studio实现帧动画

程序员文章站 2022-06-25 20:36:58
本文实例为大家分享了android studio实现帧动画的具体代码,供大家参考,具体内容如下按一定的顺序播放静态的图片1、几张联系的图片2、一个图片资源管理布局文件:cartoon_source.x...

本文实例为大家分享了android studio实现帧动画的具体代码,供大家参考,具体内容如下

按一定的顺序播放静态的图片

1、几张联系的图片

Android Studio实现帧动画

2、一个图片资源管理布局文件:cartoon_source.xml

3、一个主要的布局文件:cartoon.xml

4、main.java文件

cartoon_source.xml

<?xml version="1.0" encoding="utf-8"?>
//帧动画资源列表控件
<animation-list xmlns:android="http://schemas.android.com/apk/res/android">
  //第一个是图片资源的地址;第二参数是这个图片播放的事件:120ms;
    <item android:drawable="@drawable/boy_0" android:duration="120"/>
    <item android:drawable="@drawable/boy_1" android:duration="120"/>
    <item android:drawable="@drawable/boy_2" android:duration="120"/>
    <item android:drawable="@drawable/boy_3" android:duration="120"/>
    <item android:drawable="@drawable/boy_4" android:duration="120"/>
    <item android:drawable="@drawable/boy_5" android:duration="120"/>
    <item android:drawable="@drawable/boy_6" android:duration="120"/>
    <item android:drawable="@drawable/boy_7" android:duration="120"/>
</animation-list>

cartoon.xml

<?xml version="1.0" encoding="utf-8"?>
<relativelayout
    android:id="@+id/boy"
    android:background="@drawable/cartoon"(背景为资源整合布局文件)
    android:layout_height="match_parent"
    android:layout_width="match_parent"
    xmlns:android="http://schemas.android.com/apk/res/android"/>

main.java

package com.example.imageview;

import androidx.appcompat.app.appcompatactivity;
import androidx.appcompat.widget.toolbar;
import androidx.core.app.notificationcompat;

import android.annotation.suppresslint;
import android.app.alertdialog;
import android.app.notification;
import android.app.notificationchannel;
import android.app.notificationmanager;
import android.app.pendingintent;
import android.content.dialoginterface;
import android.content.intent;
import android.graphics.bitmapfactory;
import android.graphics.color;
import android.graphics.drawable.animationdrawable;
import android.graphics.drawable.drawable;
import android.os.build;
import android.os.bundle;
import android.util.log;
import android.view.view;
import android.view.viewgroup;
import android.widget.adapterview;
import android.widget.button;
import android.widget.listview;
import android.widget.popupwindow;
import android.widget.progressbar;
import android.widget.relativelayout;
import android.widget.textview;

import java.nio.channels.channel;
import java.util.arraylist;
import java.util.list;

public class mainactivity<i> extends appcompatactivity {
    /*
    private static final string tag = "leo";
    private notificationmanager manager;
    private notification notification;
    private popupwindow popupwindow;
    //创建一个数组,内部元素为bean类型;
    private list<bean> data = new arraylist<>();
     */
    private boolean flag = true;
    @override
    protected void oncreate(bundle savedinstancestate) {
        super.oncreate(savedinstancestate);
        setcontentview(r.layout.cartoon_boy);
        //获得布局
        relativelayout relativelayout = findviewbyid(r.id.boy);
        //从布局中获得背景
        animationdrawable anim = (animationdrawable)relativelayout.getbackground();
        //设置点击监听
        relativelayout.setonclicklistener(new view.onclicklistener() {
            @override
            public void onclick(view view) {
                if (flag){
                    anim.start();
                    flag = false;
                }
                else{
                    anim.stop();
                    flag = true;
                }
            }
        });
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。