为什么80%的码农都做不了架构师?>>>   

程序功能,点击按钮时,图片一张一张循环播放:

直接来代码:

AppMain.java

[java] view plaincopy

  1. package lxy.litsoft;
  2. import android.app.Activity;
  3. import android.graphics.drawable.AnimationDrawable;
  4. import android.os.Bundle;
  5. import android.view.View;
  6. import android.view.View.OnClickListener;
  7. import android.widget.Button;
  8. import android.widget.ImageView;
  9. public class AppMain extends Activity {
  10. //声明对象
  11. ImageView disPic;
  12. Button btDis;
  13. public void onCreate(Bundle savedInstanceState) {
  14. super.onCreate(savedInstanceState);
  15. setContentView(R.layout.main);
  16. //实例化对象
  17. disPic = (ImageView)findViewById(R.id.imageView01);
  18. btDis = (Button)findViewById(R.id.button01);
  19. //绑定监听器
  20. btDis.setOnClickListener(new ButtonListener());
  21. }
  22. //按钮的监听器实现
  23. class ButtonListener implements OnClickListener{
  24. public void onClick(View v) {
  25. //动画播放
  26. disPic.setBackgroundResource(R.drawable.anim);
  27. AnimationDrawable animationDrawable = (AnimationDrawable)disPic.getBackground();
  28. animationDrawable.start();
  29. }
  30. }
  31. }

main.xml

[html] view plaincopy

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  3. android:orientation="vertical"
  4. android:layout_width="fill_parent"
  5. android:layout_height="fill_parent" >
  6. <TextView
  7. android:layout_width="fill_parent"
  8. android:layout_height="wrap_content"
  9. android:text="@string/hello"/>
  10. <ImageView
  11. android:id="@+id/imageView01"
  12. android:layout_width="wrap_content"
  13. android:layout_height="wrap_content"></ImageView>
  14. <Button
  15. android:id="@+id/button01"
  16. android:layout_width="fill_parent"
  17. android:layout_height="wrap_content"
  18. android:text="Anim"></Button>
  19. </LinearLayout>

res/drawable/anim.xml

[html] view plaincopy

  1. <animation-list
  2. xmlns:android="http://schemas.android.com/apk/res/android"
  3. android:oneshot="false">
  4. <item android:drawable="@drawable/p30"
  5. android:duration="300"/>
  6. <item android:drawable="@drawable/p31"
  7. android:duration="300"/>
  8. <item android:drawable="@drawable/p32"
  9. android:duration="300"/>
  10. <item android:drawable="@drawable/p33"
  11. android:duration="300"/>
  12. <item android:drawable="@drawable/p34"
  13. android:duration="300"/>
  14. <item android:drawable="@drawable/p35"
  15. android:duration="300"/>
  16. <item android:drawable="@drawable/p36"
  17. android:duration="300"/>
  18. <item android:drawable="@drawable/p37"
  19. android:duration="300"/>
  20. </animation-list>

其中每一个item就是一帧的资源,android:drawable是图片资源,android:duration是每一帧的显示时间。

转载于:https://my.oschina.net/wzzz/blog/135618

android Frame-By-Frame Animations(一帧一帧地播放动画)的使用相关推荐

  1. Glide加载gif动画只播放一次的方法 Glide加载gif动画先显示最后一帧再开始播放动画导致闪屏的解决方案

    场景: Android App利用ViewPager制作引导页,然后利用Glide加载gif动画. 问题: 1.Glide加载gif动画如何只播放一次? 2.Glide加载gif动画,在viewPag ...

  2. Android 音频开发(二) 采集一帧音频数据

    这一节主要介绍如何采集一帧音频数据,如果你对音频的基础概念比较陌生,建议看我的上一篇Android 音频开发(一) 基础入门篇.因为音频开发过程中,经常要涉及到这些基础知识,掌握了这些重要的基础知识后 ...

  3. Android 卡顿优化之 Skipped * frames 掉帧的计算

    Android 卡顿优化之 Skipped * frames 掉帧的计算 有时候看日志的时候,可能会在日志中看到类似下文的打印: Skipped 30 frames! The application ...

  4. frame 和 frame属性

    帧标志 1.<frameset></frameset> 2.<frame> 3.<noframes></noframes> 帧是由英文Fra ...

  5. 认识Android(常用布局,控件,四大组件,动画,自定义控件及异常消息处理机制)

    目录 一.布局 1.LinearLayout(线性布局): 2.相对布局(RelativeLayout) 3.GridLayout(网格布局) 4.FrameLayout(帧布局): 二.控件 1.T ...

  6. QR扫码综合示例教程(十四)Qt6.2.1(qml)取出视频帧 取景器帧

    前言: 前面几篇教程,都是介绍了使用Qt5.15.2(qml)取出视频帧,本篇解决从Qt6.2.1中取出视频帧 本教程是在Qt6.2.1(qml)摄像头显示 示例代码的基础上修改 注意,本教程示例,在 ...

  7. lottie android min sdk,跳一个Lottie无法回调开始播放动画事件的坑

    一.背景介绍 项目背景是在界面中弹出一个浮层动画,同时播放一个音效. 二.当前实现 实现思路比较简单:继承一个DialogFragment,在相关的生命周期方法onViewCreated中调用star ...

  8. 如何高效使用Micropython看你喜欢看的视频?【下】(生成图片帧和WIFI传输播放)

    如何高效使用Micropython看你喜欢看的视频?[下](生成图片帧和WIFI传输播放) 上一篇教程,我们谈到本项目还有两个重要的问题没有解决:一个是没有TF卡的话,应该如何播放视频,另一个就是如何 ...

  9. python小工具------将H264/H265码流文件转为一帧一帧的JPEG文件

    一.功能 输入H264/H265码流路径,此脚本可以将对应的码流转为一帧一帧的JPEG文件,并保存到指定路径. 二.具体实现 import av import sysdef h265ToJpg_dem ...

  10. 【音视频数据数据处理 12】【H.264篇】解析H.264原始码流中的I帧 / P帧 / B帧数据(暂未解决,本文先放着,来日更新)

    [音视频数据数据处理 12][H.264篇]解析H.264原始码流中的I帧 / P帧 / B帧数据 一.如何判断是 I帧 / P帧 / B帧 1.1 slice_type 1.2 slice_head ...

最新文章

  1. 基于深度连续融合的多传感器三维目标检测
  2. C++入门经典-例9.4-默认模板参数
  3. 文本去重之MinHash算法——就是多个hash函数对items计算特征值,然后取最小的计算相似度...
  4. lodop指定打印机打印_GitHub - xtjatswc/formext: 基于Lodop封装的打印框架,支持表单、报表配置。...
  5. teamviewer 过期解决办法
  6. 201673020127 词频统计软件项目报告
  7. LeetCode 443. 压缩字符串(双指针)
  8. mysql space id_MySQL8.0新特性:增加系统文件追踪space ID和物理文件的映射-阿里云开发者社区...
  9. 个人管理 - Learn More,Study Less!
  10. java trylock超时_老师,死锁设置超时这个我知道意思,但是您能举个例子么
  11. Python脚本-导出SQL查询结果到Excel文件
  12. java 获取windows窗口句柄_得到Java程序的WIN32窗口句柄(转)
  13. GreenSock2
  14. 微服务结合领域驱动设计落地
  15. java对外接口安全问题_怎么保证对外暴露接口的安全性(调用频率限制)
  16. error: (-215:Assertion failed) !_src0.empty() in function ‘cv:: 可能的诸多原因!!!
  17. 深度学习必备三种基本绘图技能
  18. 开发淘宝、京东、苏宁、拼多多转链软件
  19. 【20210825】【数据分析】两个向量做相关性分析时,需不需要统一量纲?
  20. 学生寝室电控系统的原理功能

热门文章

  1. windows下mysql主从同步_详解windows下mysql的主从同步
  2. 将Eclipse中的工程保存到Github的操作步骤
  3. Java实现视频网站的视频上传、视频转码、视频关键帧抽图, 及视频播放功能
  4. 【SpringMVC框架】springmvc的基础知识
  5. Python入门6_抽象
  6. 常用MYSQL日期查询
  7. Mybatis的几种传参方式
  8. 关于Zookeeper来实现分布式锁的几个问题
  9. rabbitmq实现秒杀中订单流量削峰
  10. vue中$router以及$route的使用