码迷,mamicode.com
首页 > 其他好文 > 详细

帧动画 使用详解

时间:2019-08-08 21:10:08      阅读:87      评论:0      收藏:0      [点我收藏+]

标签:通过   alt   电影   收获   find   技术   好的   实现原理   文章   

技术图片

极力推荐文章:欢迎收藏
Android 干货分享

技术图片

阅读五分钟,每日十点,和您一起终身学习,这里是程序员Android

本篇文章主要介绍 Android 开发中的部分知识点,通过阅读本篇文章,您将收获以下内容:

  1. 创建帧动画播放控制的xml文件
  2. 设置播放帧动画载体
  3. 使用AnimationDrawable 开启 、关闭帧动画
  4. 实现效果及素材

动画在Android开发中经常会被用到,好的动画效果可以达到事半功倍的效果,本文主要是帧动画的实现。帧动画主要实现原理是类似播放电影一样,一帧帧的播放预存好的图片,当播放速度大于人眼视觉存留的速度时,就会成为动画效果。其实手机中的开机动画也是帧动画,bootanimation .zip中存放大量的图片。

1. 创建帧动画播放控制的xml文件

使用方法如下:
在anim 文件夹下创建一个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.实现效果及素材

  • 实现效果

技术图片

  • 素材

技术图片
技术图片

... ...

技术图片

至此,本篇已结束,如有不对的地方,欢迎您的建议与指正。同时期待您的关注,感谢您的阅读,谢谢!

技术图片

帧动画 使用详解

标签:通过   alt   电影   收获   find   技术   好的   实现原理   文章   

原文地址:https://www.cnblogs.com/wangjie1990/p/11323682.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!