帧动画 使用详解
极力推荐文章:欢迎收藏Android 干货分享
本篇文章主要介绍 Android
开发中的部分知识点,通过阅读本篇文章,您将收获以下内容:
创建帧动画播放控制的xml文件
设置播放帧动画载体
使用AnimationDrawable 开启 、关闭帧动画
实现效果及素材
动画在Android
开发中经常会被用到,好的动画效果可以达到事半功倍的效果,本文主要是帧动画的实现。帧动画主要实现原理是类似播放电影一样,一帧帧的播放预存好的图片,当播放速度大于人眼视觉存留的速度时,就会成为动画效果。其实手机中的开机动画也是帧动画,bootanimation .zip
中存放大量的图片。
1. 创建帧动画播放控制的xml文件
使用方法如下:xml
,里面放置用于播放的一帧一帧图片
<?xml version="1.0" encoding="utf-8"?>
<animation-list xmlns:android="http://schemas.android.com/apk/res/android" >
<item
android:drawable="@drawable/bird0001_risk"
android:duration="80"/>
<item
android:drawable="@drawable/bird0002_risk"
android:duration="80"/>
<item
android:drawable="@drawable/bird0003_risk"
android:duration="80"/>
<item
android:drawable="@drawable/bird0004_risk"
android:duration="80"/>
<item
android:drawable="@drawable/bird0005_risk"
android:duration="80"/>
<item
android:drawable="@drawable/bird0006_risk"
android:duration="80"/>
<item
android:drawable="@drawable/bird0007_risk"
android:duration="80"/>
<item
android:drawable="@drawable/bird0008_risk"
android:duration="80"/>
<item
android:drawable="@drawable/bird0009_risk"
android:duration="80"/>
<item
android:drawable="@drawable/bird0010_risk"
android:duration="80"/>
<item
android:drawable="@drawable/bird0011_risk"
android:duration="80"/>
<item
android:drawable="@drawable/bird0012_risk"
android:duration="80"/>
<item
android:drawable="@drawable/bird0013_risk"
android:duration="80"/>
<item
android:drawable="@drawable/bird0014_risk"
android:duration="80"/>
<item
android:drawable="@drawable/bird0015_risk"
android:duration="80"/>
<item
android:drawable="@drawable/bird0016_risk"
android:duration="80"/>
<item
android:drawable="@drawable/bird0017_risk"
android:duration="80"/>
<item
android:drawable="@drawable/bird0018_risk"
android:duration="80"/>
<item
android:drawable="@drawable/bird0019_risk"
android:duration="80"/>
<item
android:drawable="@drawable/bird0020_risk"
android:duration="80"/>
</animation-list>
2.设置播放帧动画载体
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<ImageView
android:id="@+id/img"
android:layout_width="80dp"
android:layout_height="80dp"
android:layout_gravity="center_horizontal"
android:background="@anim/frame_animation" />
</LinearLayout>
3. 使用AnimationDrawable 开启 、关闭帧动画
/**
* 1.帧动画使用方法
*
* */
public void BtnFrameAnim(View view) {
// AnimationDrawable 用来创建帧动画的对象
final AnimationDrawable animationDrawable = (AnimationDrawable) mImageView
.getBackground();
if (isStartAnim) {
animationDrawable.stop();
((Button) findViewById(R.id.btn_frame_anim)).setText("开启帧动画");
isStartAnim = false;
} else {
// 开始帧动画
animationDrawable.start();
((Button) findViewById(R.id.btn_frame_anim)).setText("关闭帧动画");
isStartAnim = true;
}
}
4.实现效果及素材
实现效果
飞翔的小鸟
素材
bird0001_risk.png
bird0002_risk.png
... ...
bird0020_risk.png
长按识别二维码,领福利
至此,本篇已结束,如有不对的地方,欢迎您的建议与指正。同时期待您的关注,感谢您的阅读,谢谢!
如有侵权,请联系小编,小编对此深感抱歉,届时小编会删除文章,立即停止侵权行为,请您多多包涵。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!