android Frame-By-Frame Animations(一帧一帧地播放动画)的使用
为什么80%的码农都做不了架构师?>>>
程序功能,点击按钮时,图片一张一张循环播放:
直接来代码:
AppMain.java
[java] view plaincopy
- package lxy.litsoft;
- 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;
- public class AppMain extends Activity {
- //声明对象
- ImageView disPic;
- Button btDis;
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.main);
- //实例化对象
- disPic = (ImageView)findViewById(R.id.imageView01);
- btDis = (Button)findViewById(R.id.button01);
- //绑定监听器
- btDis.setOnClickListener(new ButtonListener());
- }
- //按钮的监听器实现
- class ButtonListener implements OnClickListener{
- public void onClick(View v) {
- //动画播放
- disPic.setBackgroundResource(R.drawable.anim);
- AnimationDrawable animationDrawable = (AnimationDrawable)disPic.getBackground();
- animationDrawable.start();
- }
- }
- }
main.xml
[html] view plaincopy
- <?xml version="1.0" encoding="utf-8"?>
- <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
- android:orientation="vertical"
- android:layout_width="fill_parent"
- android:layout_height="fill_parent" >
- <TextView
- android:layout_width="fill_parent"
- android:layout_height="wrap_content"
- android:text="@string/hello"/>
- <ImageView
- android:id="@+id/imageView01"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"></ImageView>
- <Button
- android:id="@+id/button01"
- android:layout_width="fill_parent"
- android:layout_height="wrap_content"
- android:text="Anim"></Button>
- </LinearLayout>
res/drawable/anim.xml
[html] view plaincopy
- <animation-list
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:oneshot="false">
- <item android:drawable="@drawable/p30"
- android:duration="300"/>
- <item android:drawable="@drawable/p31"
- android:duration="300"/>
- <item android:drawable="@drawable/p32"
- android:duration="300"/>
- <item android:drawable="@drawable/p33"
- android:duration="300"/>
- <item android:drawable="@drawable/p34"
- android:duration="300"/>
- <item android:drawable="@drawable/p35"
- android:duration="300"/>
- <item android:drawable="@drawable/p36"
- android:duration="300"/>
- <item android:drawable="@drawable/p37"
- android:duration="300"/>
- </animation-list>
其中每一个item就是一帧的资源,android:drawable是图片资源,android:duration是每一帧的显示时间。
转载于:https://my.oschina.net/wzzz/blog/135618
android Frame-By-Frame Animations(一帧一帧地播放动画)的使用相关推荐
- Glide加载gif动画只播放一次的方法 Glide加载gif动画先显示最后一帧再开始播放动画导致闪屏的解决方案
场景: Android App利用ViewPager制作引导页,然后利用Glide加载gif动画. 问题: 1.Glide加载gif动画如何只播放一次? 2.Glide加载gif动画,在viewPag ...
- Android 音频开发(二) 采集一帧音频数据
这一节主要介绍如何采集一帧音频数据,如果你对音频的基础概念比较陌生,建议看我的上一篇Android 音频开发(一) 基础入门篇.因为音频开发过程中,经常要涉及到这些基础知识,掌握了这些重要的基础知识后 ...
- Android 卡顿优化之 Skipped * frames 掉帧的计算
Android 卡顿优化之 Skipped * frames 掉帧的计算 有时候看日志的时候,可能会在日志中看到类似下文的打印: Skipped 30 frames! The application ...
- frame 和 frame属性
帧标志 1.<frameset></frameset> 2.<frame> 3.<noframes></noframes> 帧是由英文Fra ...
- 认识Android(常用布局,控件,四大组件,动画,自定义控件及异常消息处理机制)
目录 一.布局 1.LinearLayout(线性布局): 2.相对布局(RelativeLayout) 3.GridLayout(网格布局) 4.FrameLayout(帧布局): 二.控件 1.T ...
- QR扫码综合示例教程(十四)Qt6.2.1(qml)取出视频帧 取景器帧
前言: 前面几篇教程,都是介绍了使用Qt5.15.2(qml)取出视频帧,本篇解决从Qt6.2.1中取出视频帧 本教程是在Qt6.2.1(qml)摄像头显示 示例代码的基础上修改 注意,本教程示例,在 ...
- lottie android min sdk,跳一个Lottie无法回调开始播放动画事件的坑
一.背景介绍 项目背景是在界面中弹出一个浮层动画,同时播放一个音效. 二.当前实现 实现思路比较简单:继承一个DialogFragment,在相关的生命周期方法onViewCreated中调用star ...
- 如何高效使用Micropython看你喜欢看的视频?【下】(生成图片帧和WIFI传输播放)
如何高效使用Micropython看你喜欢看的视频?[下](生成图片帧和WIFI传输播放) 上一篇教程,我们谈到本项目还有两个重要的问题没有解决:一个是没有TF卡的话,应该如何播放视频,另一个就是如何 ...
- python小工具------将H264/H265码流文件转为一帧一帧的JPEG文件
一.功能 输入H264/H265码流路径,此脚本可以将对应的码流转为一帧一帧的JPEG文件,并保存到指定路径. 二.具体实现 import av import sysdef h265ToJpg_dem ...
- 【音视频数据数据处理 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 ...
最新文章
- 基于深度连续融合的多传感器三维目标检测
- C++入门经典-例9.4-默认模板参数
- 文本去重之MinHash算法——就是多个hash函数对items计算特征值,然后取最小的计算相似度...
- lodop指定打印机打印_GitHub - xtjatswc/formext: 基于Lodop封装的打印框架,支持表单、报表配置。...
- teamviewer 过期解决办法
- 201673020127 词频统计软件项目报告
- LeetCode 443. 压缩字符串(双指针)
- mysql space id_MySQL8.0新特性:增加系统文件追踪space ID和物理文件的映射-阿里云开发者社区...
- 个人管理 - Learn More,Study Less!
- java trylock超时_老师,死锁设置超时这个我知道意思,但是您能举个例子么
- Python脚本-导出SQL查询结果到Excel文件
- java 获取windows窗口句柄_得到Java程序的WIN32窗口句柄(转)
- GreenSock2
- 微服务结合领域驱动设计落地
- java对外接口安全问题_怎么保证对外暴露接口的安全性(调用频率限制)
- error: (-215:Assertion failed) !_src0.empty() in function ‘cv:: 可能的诸多原因!!!
- 深度学习必备三种基本绘图技能
- 开发淘宝、京东、苏宁、拼多多转链软件
- 【20210825】【数据分析】两个向量做相关性分析时,需不需要统一量纲?
- 学生寝室电控系统的原理功能