Animation-list帧动画使用【微信语音播放动画】
来源:互联网 发布:如何利用知乎赚钱 编辑:程序博客网 时间:2024/06/05 09:43
第一步:先上图片素材,以下素材放到res/drawable目录下:
http://blog.csdn.net/aminfo/article/details/7847761
图片素材:
文件名称:
icon1.png
icon1.png
icon1.png
icon1.png
icon1.png
icon1.png
第二步:上动画Animation-list帧布局文件,有2个,一个是按顺序显示动画,一个是倒序显示动画,文件存放在res/drawable目录下
顺序显示动画文件:animation1.xml
- <?xmlversion="1.0"encoding="utf-8"?>
- <!--
- 根标签为animation-list,其中oneshot代表着是否只展示一遍,设置为false会不停的循环播放动画
- 根标签下,通过item标签对动画中的每一个图片进行声明
- android:duration 表示展示所用的该图片的时间长度
- -->
- <animation-list
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:oneshot="true"
- >
- <itemandroid:drawable="@drawable/icon1"android:duration="150"></item>
- <item android:drawable="@drawable/icon2"android:duration="150"></item>
- <itemandroid:drawable="@drawable/icon3"android:duration="150"></item>
- <item android:drawable="@drawable/icon4"android:duration="150"></item>
- <itemandroid:drawable="@drawable/icon5"android:duration="150"></item>
- <item android:drawable="@drawable/icon6"android:duration="150"></item>
- </animation-list>
倒序显示动画文件:animation2.xml
- <?xmlversion="1.0"encoding="utf-8"?>
- <!--
- 根标签为animation-list,其中oneshot代表着是否只展示一遍,设置为false会不停的循环播放动画
- 根标签下,通过item标签对动画中的每一个图片进行声明
- android:duration 表示展示所用的该图片的时间长度
- -->
- <animation-list
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:oneshot="true"
- >
- <itemandroid:drawable="@drawable/icon6"android:duration="150"></item>
- <item android:drawable="@drawable/icon5"android:duration="150"></item>
- <itemandroid:drawable="@drawable/icon4"android:duration="150"></item>
- <item android:drawable="@drawable/icon3"android:duration="150"></item>
- <itemandroid:drawable="@drawable/icon2"android:duration="150"></item>
- <item android:drawable="@drawable/icon1"android:duration="150"></item>
- </animation-list>
第三步:上布局文件,放在res/layout目录下,文件名main.xml:
- <?xmlversion="1.0"encoding="utf-8"?>
- <LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"
- android:layout_width="fill_parent"
- android:layout_height="fill_parent"
- android:orientation="vertical">
- <ImageViewandroid:id="@+id/animationIV"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:padding="5px"
- android:src="@drawable/animation1"/>
- <Buttonandroid:id="@+id/buttonA"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:padding="5px"
- android:text="顺序显示"/>
- <Buttonandroid:id="@+id/buttonB"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:padding="5px"
- android:text="停止"/>
- <Buttonandroid:id="@+id/buttonC"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:padding="5px"
- android:text="倒序显示"/>
- </LinearLayout>
第四步:上Activity文件,文件名:MainActivity.java
- package org.shuxiang.test;
- import android.app.Activity;
- import android.graphics.drawable.AnimationDrawable;
- import android.os.Bundle;
- import android.view.View;
- import android.view.View.OnClickListener;
- import android.view.Window;
- import android.widget.Button;
- import android.widget.ImageView;
- public class Activity10extends Activity
- {
- private ImageView animationIV;
- private Button buttonA, buttonB, buttonC;
- private AnimationDrawable animationDrawable;
- @Override
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- requestWindowFeature(Window.FEATURE_NO_TITLE);
- setContentView(R.layout.test10);
- animationIV = (ImageView) findViewById(R.id.animationIV);
- buttonA = (Button) findViewById(R.id.buttonA);
- buttonB = (Button) findViewById(R.id.buttonB);
- buttonC = (Button) findViewById(R.id.buttonC);
- buttonA.setOnClickListener(new OnClickListener()
- {
- @Override
- public void onClick(View v) {
- // TODO Auto-generated method stub
- animationIV.setImageResource(R.drawable.animation1);
- animationDrawable = (AnimationDrawable) animationIV.getDrawable();
- animationDrawable.start();
- }
- });
- buttonB.setOnClickListener(new OnClickListener()
- {
- @Override
- public void onClick(View v) {
- // TODO Auto-generated method stub
- animationDrawable = (AnimationDrawable) animationIV.getDrawable();
- animationDrawable.stop();
- }
- });
- buttonC.setOnClickListener(new OnClickListener()
- {
- @Override
- public void onClick(View v) {
- // TODO Auto-generated method stub
- animationIV.setImageResource(R.drawable.animation2);
- animationDrawable = (AnimationDrawable) animationIV.getDrawable();
- animationDrawable.start();
- }
- });
- }
- }
0 0
- Animation-list帧动画使用【微信语音播放动画】
- Animation-list帧动画使用【微信语音播放动画】
- animation-list,帧动画
- Android 使用animation-list实现逐帧动画
- animation-list实现动画
- CSS3动画animation语音滚动
- 用Animation-list实现逐帧动画
- Android Animation-list 逐帧动画
- Android动画之animation-list实现逐帧动画
- 【Animation】Android 用Animation-list实现逐帧动画
- Animation动画使用注意事项
- 使用Animation-list实现等待加载动画效果
- 使用Animation-list实现等待旋转圆圈动画
- 使用Animation-list实现等待旋转圆圈动画
- Animation动画效果的实现(三)----Animation-list实现逐帧动画
- Android逐帧动画的简单使用-语音播放效果的实现
- Android播放聊天语音消息帧动画问题
- Frame Animation 帧动画
- 黑马程序员--【学习日记八】——IO流
- Pow(x, n)
- web程序员如何快速搭建一个免费又好用的网站
- 使用VS2008用VC开发ActiveX
- Android 快速开发系列 打造万能的ListView GridView 适配器
- Animation-list帧动画使用【微信语音播放动画】
- C++ dll 多重调用封装及C#调用
- Android之appWidget按钮事件
- 数据结构和算法——排序算法(冒泡法 选择法 插入法 快速法)实现
- POJ 3045 Cow Acrobats(排序题)
- centOS 安装中文输入法
- Mysql 存储过程和函数区别
- jdbc+sqlite+tomcat+mac10.8.5
- error C2664: “C****::XXXX”: 不能将参数 1 从“const char [7]”转换为“LPCTSTR”