博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Android Frame动画demo
阅读量:7137 次
发布时间:2019-06-28

本文共 2043 字,大约阅读时间需要 6 分钟。

Android动画介绍:Android为我们提供了两种动画实现,Frame和Tween。

两者之间的区别:

  1.Frame动画:就像放电影一样,是通过预先做好的图片进行连续播放从而形成动画效果

  2.Tween动画:通过对图片设置平移、缩放、旋转、改变透明度等方式来显示动画效果

本节仅讲Frame动画,

Frame动画是通过AnimationDrawable来实现的,它提供了start()和stop()两个方法,对播放的动画进行控制,一般通过XML文件配置,在工程的res/anim目录下创建一个XML配置文件,该配置文件有一个<animation-list>根元素和若干个<item>子元素。

废话就不说了,下面将贴出该例子的完整代码,供大家测试使用:

一、FrameActivity

package com.yw.myapiupdate.frame;import com.yw.myapiupdate.R;import android.app.Activity;import android.graphics.drawable.AnimationDrawable;import android.os.Bundle;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.ImageView;/** *  * 实现动画轮询播放 * @author yw-tony * */public class FrameActivity extends Activity implements OnClickListener{    private Button btn_start;    private Button btn_end;    private ImageView iv;    private AnimationDrawable ad;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.frame_layout);        initViews();    }    private void initViews(){        btn_start = (Button)findViewById(R.id.frame_btn_start);        btn_end = (Button)findViewById(R.id.frame_btn_end);        iv = (ImageView)findViewById(R.id.frame_iv);        btn_start.setOnClickListener(this);        btn_end.setOnClickListener(this);        this.ad = (AnimationDrawable)iv.getBackground();    }    private void startAnimation(){        this.ad.start();    }    private void stopAnimation(){        this.ad.stop();    }    @Override    public void onClick(View v) {        switch(v.getId()){        case R.id.frame_btn_start:            startAnimation();            break;        case R.id.frame_btn_end:            stopAnimation();            break;        }    }}

与之对应的xml文件

二、设置动画的xml文件

 

下面是源代码以及资源文件的下载地址:

 http://files.cnblogs.com/tony-yang-flutter/anni.zip

 

 

 

 

转载于:https://www.cnblogs.com/tony-yang-flutter/p/3392269.html

你可能感兴趣的文章
ssh到远程主机杀死进程
查看>>
Linux批量远程命令和上传下载工具
查看>>
使用System Center Essentials 2007查看计算机的软件清单
查看>>
HTML5标签的语义认知和理解(1)
查看>>
活动目录快照和DMT的终极使用---Windows2008 R2 新功能系列之九
查看>>
组策略应用之二——限制客户端软件安装及使用
查看>>
算法学习之路|逆元取模(一)
查看>>
通过Lotus Notes7.0.1客户端收发MDaemon邮件
查看>>
学习分区表应该了解的参数
查看>>
Spring Data Elasticsearch 与 Elasticsearch 的关系
查看>>
puppet完全攻略(二)让puppet代码支持vim高亮显示
查看>>
解决了wanda小鱼的中文乱码问题
查看>>
php 之常用技巧!
查看>>
Python在HiveQL中的运用
查看>>
windows mobile开发循序渐进(1)关于平台和工具
查看>>
windows mobile开发循序渐进(3)移动应用程序的数据存储之本地数据存储第一篇
查看>>
Win7 64位环境下JDK和Eclipse的选择与安装
查看>>
CentOS 5.2下Memcache的安装与配置
查看>>
虚拟机安装以及PCL的配置(2)
查看>>
如何查看Linux的相关配置信息
查看>>