安卓应用开发中,帧动画的实现实际上并不难,但对于初学者来说没有系统的设计过应用,感觉实现起来比较不容易,那么这篇博文就适合你来阅读。示例代码比较简单,我们先从布局文件开始讲起:

首先这个布局文件相当简单,我们通过一个垂直方向的线性布局对控制动画播放和暂停的按钮和放置帧图片的ImageView进行布局,代码的效果如图所示:(按钮下方空白处放置了ImageView)

XML布局代码如下:

<LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical">

<Button
android:id="@+id/button"
android:layout_width="match_parent"
android:layout_height="40dp"
android:text="@string/button"/>

<ImageView
android:id="@+id/p_w_picpath"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:contentDescription="@string/action_settings"/>

</LinearLayout>

对于Button和ImageView这两个基本组件我们不多做介绍了,接下来我们来讲讲怎么实现帧动画的关键步骤:

1、在项目中新建一个drawable文件夹:选定自己的项目,右键单击new->floder->输入名字drawable->文件夹创建成功!

2、向drawable文件夹中导入需要的图片:(1)使用Import导入:选择drawable文件夹->右键单击选择filesystem->选择需要导入的图片,成功!(2)直接将图片选中,拖入项目中;

3、关键代码amination.xml:选择drawable文件夹->右键单击->new->AndroidXmlFile->(ResourceType选择Drawable,RootElement选择animation-list,file输入animation(就是文件名));

具体代码如下:

<?xmlversion="1.0"encoding="utf-8"?>
<animation-listxmlns:android="http://schemas.android.com/apk/res/android"
android:oneshot="false"
android:visible="true">

<item
android:drawable="@drawable/a1"
android:duration="100">
</item>
<item
android:drawable="@drawable/a2"
android:duration="100">
</item>
<item
android:drawable="@drawable/a3"
android:duration="100">
</item>
<item
android:drawable="@drawable/a4"
android:duration="100">
</item>
<item
android:drawable="@drawable/a5"
android:duration="100">
</item>

</animation-list>

这上面的android:drawable参数是每帧图片,android:duration是每帧的时间长度(单位为毫秒);

接下来就是java程序了,非常简单:给了注释,看看

packagecom.vekaco.picamination;//包名

/*导包:可用ctrl+alt+o自动完成*/

importandroid.app.Activity;
importandroid.graphics.drawable.AnimationDrawable;
importandroid.os.Bundle;
importandroid.view.View;
importandroid.view.View.OnClickListener;
importandroid.widget.Button;
importandroid.widget.ImageView;

publicclassMainActivityextendsActivity{
ImageViewp_w_picpathView;
Buttonbutton;//按钮组件
AnimationDrawableanimationDrawable;//动画关键组件

@Override
protectedvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
p_w_picpathView=(ImageView)findViewById(R.id.p_w_picpath);
button=(Button)findViewById(R.id.button);

p_w_picpathView.setBackgroundResource(R.drawable.amination);
animationDrawable=(AnimationDrawable)p_w_picpathView.getBackground();

//获取Image的背景图片资源,然后才能让他一帧一帧动起来;
button.setOnClickListener(newOnClickListener(){

@Override
publicvoidonClick(Viewv){
//TODOAuto-generatedmethodstub
if(animationDrawable.isRunning()){
animationDrawable.stop();
}else{
animationDrawable.start();
}
}
});
//animationDrawable.start();
}

}

源代码附件

转载于:https://blog.51cto.com/vekaco/1303624

Android帧动画的实现相关推荐

  1. Android 帧动画何时停止播放

    为什么80%的码农都做不了架构师?>>>    关于android帧动画没有提供结束播放的接口回调表示不理解,也许是基于播放动画的时候,系统在干其他事情,无法确切地保证动画在tota ...

  2. android 帧动画的使用

    今天,简单讲讲android里如何使用帧动画. 其实也很简单,不过之前自己需要写一个帧动画时,忘记了具体怎么写,在网上查找资料后,解决了这个问题.所以这里记录一下. 一.概述 帧动画,顾名思义就是这个 ...

  3. Android帧动画特点,Android帧动画和补间动画看这篇足够了

    原标题:Android帧动画和补间动画看这篇足够了 距离活动开始还有两天,重庆的开发者们赶快报名行动起来吧! 写在前面 为了使用户的交互更加流畅自然,动画也就成为了一个应用中必不可少的元素之一.在 A ...

  4. android 帧动画张数限制,Android帧动画和补间动画看这篇足够了

    原标题:Android帧动画和补间动画看这篇足够了 写在前面 为了使用户的交互更加流畅自然,动画也就成为了一个应用中必不可少的元素之一.在 Android 中常用的动画分类无外乎三种,最早的帧动画.补 ...

  5. Android帧动画

    对于 Android 帧动画 大体上可以理解成 一张张图片 按一定顺序切换, 这样当连续几张图是一组动画时,就可以连起来了看成是一个小电影,你懂得 好得,比就装到这里,下面开始进入正题,由于产品需求 ...

  6. android帧动画实现方法之一

    好多动画离不开帧动画的使用,下面就实现帧动画的制作方式之一,以后会推出其他方法. 上面是文件存放位置. a.xml文件的代码如下: <?xml version="1.0" e ...

  7. android 帧动画旋转,安卓动画实现

    在res下创建一个anim包 透明.缩放.旋转.位移动画 @Override public void onClick(View v) { switch (v.getId()) { //透明动画 cas ...

  8. Android 帧动画,加载动画,AnimationDrawable,仿京东加载动画

    1.创建drawable文件ring_animation.xml <?xml version="1.0" encoding="utf-8"?> &l ...

  9. Android 帧动画 xml 方式实现

    在码农的世界里,优美的应用体验,来源于程序员对细节的处理以及自我要求的境界,年轻人也是忙忙碌碌的码农中一员,每天.每周,都会留下一些脚印,就是这些创作的内容,有一种执着,就是不知为什么,如果你迷茫,不 ...

  10. android 帧动画监听,Android 动画(View动画,帧动画,属性动画)详细介绍

    0. 前言 Android动画是面试的时候经常被问到的话题.我们都知道Android动画分为三类:View动画.帧动画和属性动画. 先对这三种动画做一个概述: View动画是一种渐进式动画,通过图像的 ...

最新文章

  1. 淘宝Fourinone分布式计算框架性能、压力、容灾测试报告
  2. 使用String 的 intern做锁提高并发能力
  3. 【Java】从键盘输入字符串和数字
  4. PDF阅读器Foxit Reader 2.2简体中文版
  5. kettle数据源连接的集群设置
  6. Android 对话框,确定取消
  7. C++不能被声明为虚函数
  8. Java面试题16 牛客 以下java程序代码,执行后的结果是()
  9. PostgreSQL参数学习:vacuum_defer_clean_age
  10. linux脚本多个条件比较大小,shell脚本-比较两个整数大小
  11. python接口测试_测试大牛都会的接口测试+Python测开+Linux技能+Git命令合集!
  12. 2022-04-25 安装PostgreSQL的发现小bug
  13. 数据治理的坑你遇到过几个?
  14. MagicDraw-包图
  15. python计算圆锥体积和表面积_圆柱与圆锥体积与表面积计算
  16. Arm 架构的过程调用标准
  17. 【呕心总结!】Ubuntu安装Basilisk流体仿真软件
  18. 有哪些好的3D建模软件,最近对3D建模很感兴趣?
  19. DFS DBS算法
  20. 卡尔曼(Kalman)滤波 C++

热门文章

  1. windows 域名+虚拟目录 (php)
  2. python,tensorflow,CNN实现mnist数据集的训练与验证正确率
  3. Mac端将本地新项目上传到github
  4. 如何调整iMindMap打印设置
  5. fir.im Weekly - 聊聊 Google 开发者大会
  6. 重写DEV的DateEdit控件的类只选择年月
  7. [转载红鱼儿]delphi 实现微信开发(2)接入微信公众号平台
  8. 使用CSS实现透明边框的效果——兼容当前各种主流浏览器[xyytIT]
  9. 干货 | 这是一份你急需的数据分析的职业规划
  10. 63.1拓展之box-shadow属性