Android Frame(AnimationDrawable 逐帧动画)的使用

原创 2015年07月08日 14:29:32

1、关键实现代码

package com.example.frametest;

import android.app.Activity;
import android.graphics.drawable.AnimationDrawable;
import android.os.Bundle;
import android.os.MessageQueue;
import android.view.Menu;
import android.widget.TextView;

public class MainActivity extends Activity {

	private TextView frameTest;
	
	@SuppressWarnings("static-access")
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		
		frameTest = (TextView)findViewById(R.id.frameText);
		frameTest.setBackgroundResource(R.drawable.frame);//绑定Frame动画图形
		
        final AnimationDrawable drawable = (AnimationDrawable) frameTest.getBackground();
        
        getMainLooper().myQueue().addIdleHandler(new MessageQueue.IdleHandler() {			
			public boolean queueIdle() {
				drawable.start();//启动动画
				return false;
			}
		});
        
	}

	public boolean onCreateOptionsMenu(Menu menu) {
		getMenuInflater().inflate(R.menu.main, menu);
		return true;
	}

}
2、xml

<?xml version="1.0" encoding="utf-8"?>
<animation-list xmlns:android="http://schemas.android.com/apk/res/android"
    android:oneshot="false">
    <item android:drawable="@drawable/girl_1" android:duration="200" />
    <item android:drawable="@drawable/girl_2" android:duration="200" />
    <item android:drawable="@drawable/girl_3" android:duration="200" />
    <item android:drawable="@drawable/girl_4" android:duration="200" />
    <item android:drawable="@drawable/girl_5" android:duration="200" />
    <item android:drawable="@drawable/girl_6" android:duration="200" />
    <item android:drawable="@drawable/girl_7" android:duration="200" />
    <item android:drawable="@drawable/girl_8" android:duration="100" />
    <item android:drawable="@drawable/girl_9" android:duration="100" />
    <item android:drawable="@drawable/girl_10" android:duration="100" />
    <item android:drawable="@drawable/girl_11" android:duration="100" />
</animation-list>
3、layout

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity" 
    >
    <TextView
        android:id="@+id/frameText"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        />
</RelativeLayout>

项目下载地址:

http://download.csdn.net/detail/u010885095/8880093



详解Android动画之Frame Animation

在开始实例讲解之前,先引用官方文档中的一段话: Frame动画是一系列图片按照一定的顺序展示的过程,和放电影的机制很相似,我们称为逐帧动画。Frame动画可以被定义在XML文件中,也可以完全编码...
  • DuanLiuchang
  • DuanLiuchang
  • 2016年07月17日 10:59
  • 1050

详解Android动画之Frame Animation

在开始实例讲解之前,先引用官方文档中的一段话: Frame动画是一系列图片按照一定的顺序展示的过程,和放电影的机制很相似,我们称为逐帧动画。Frame动画可以被定义在XML文件中,也可以完全编码实现...
  • liuhe688
  • liuhe688
  • 2011年08月03日 19:49
  • 44523

Android DrawableAnimation逐帧动画加载多图(OOM的解决)

想做一个逐帧动画,用了一百来张图片,结果内存溢出了,找了半天最后算是解决了。 本来是在drawable里面写一个animation-list,设置ImageView的backgroud, 然后在A...
  • chuangyizhongxin
  • chuangyizhongxin
  • 2015年01月13日 11:35
  • 3465

Android 逐帧动画AnimationDrawable 内存溢出的一个解决方法

Android 逐帧动画AnimationDrawable 内存溢出的一个解决方法
  • zjc_jiancheng
  • zjc_jiancheng
  • 2016年08月10日 17:10
  • 3878

AnimationDrawable加载SD卡中图片实现帧动画的坑

前言,项目中遇到一个需求,首先将包含帧动画的zip包从服务器中下载,然后解压到SD卡,然后将这些图片作为帧动画的资源图片。然后就想当然的想到用AnimationDrawable来实现。 main布局...
  • zhujiangtaotaise
  • zhujiangtaotaise
  • 2017年01月22日 16:54
  • 698

Android自定义控件:动画类---逐帧动画AnimationDrawable

1:概述             Android动画包括View Animation(视图动画)和Property Animator(属性动画),而View Animation包括Tween Ani...
  • xuefu_78
  • xuefu_78
  • 2016年07月14日 14:08
  • 2322

Android AnimationDrawable 帧动画多次切换隐藏显示时越来越快的处理

在做一个引导页时,每个页面都有一个帧动画,当来回切换页面时有的手机会出现帧动画播放速度越来越快的问题,多次尝试后找到的一个处理办法是当隐藏帧动画时设置Imageview的BackgroundDrawa...
  • taibaiyinxing
  • taibaiyinxing
  • 2016年10月20日 10:06
  • 505

AnimationDrawable在listview中的播放--android实用技巧

最近写项目的时候 发现在自定义的listview的adapter中 AnimationDrawable 不能正常的播放 纠结了好久 以为是adapter缓存的问题。。。 百度了一下 总结如下: 【...
  • MMjiajia132
  • MMjiajia132
  • 2015年03月10日 16:33
  • 1089

Android 逐帧动画与自定义Dialog

一 逐帧动画: 布局: LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" androi...
  • danfengw
  • danfengw
  • 2015年11月29日 23:39
  • 1849

Android AnimationDrawable与逐帧动画

android逐帧动画通常采用xml资源文件进行定义. 定义逐帧动画非常简单,只要在元素中使用子元素定义动画的全部帧,并指定各帧的持续时间即可. 定义逐帧动画的语法格式如下: ...
  • u010947098
  • u010947098
  • 2015年03月30日 22:32
  • 682
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Android Frame(AnimationDrawable 逐帧动画)的使用
举报原因:
原因补充:

(最多只允许输入30个字)