美文网首页
属性动画,帧动画使用

属性动画,帧动画使用

作者: 庞哈哈哈12138 | 来源:发表于2017-07-05 11:59 被阅读0次

    最近在做一个小播放器用到一些简单动画效果,记录一下

    1499226385177.gif

    效果图 一个旋转的圆形图片,右上角是帧动画
    直接上代码
    旋转圆形图片就是用原生的旋转属性动画RotateAnimation

         //自定义圆形图片
         xz = (CircleImageView) mview.findViewById(R.id.xz);
    
             rotateAnimation = new RotateAnimation(0f,360f, Animation.RELATIVE_TO_SELF,
                    0.5f,Animation.RELATIVE_TO_SELF,0.5f);
            LinearInterpolator lin = new LinearInterpolator();
            rotateAnimation.setInterpolator(lin);//匀速
            rotateAnimation.setDuration(8000);//设置动画持续时间
            rotateAnimation.setRepeatCount(-1);//设置重复次数 -1不停
            rotateAnimation.setFillAfter(true);//动画执行完后是否停留在执行完的状态
            rotateAnimation.setStartOffset(10);//执行前的等待时间
            xz.setAnimation(rotateAnimation);
            rotateAnimation.startNow();
    

    然后不停的帧动画 原理类似小时候看的小人书 很多图片重叠,产生动画的错觉
    首先drawable里新建一个动画集合

    <?xml version="1.0" encoding="utf-8"?>
    <animation-list xmlns:android="http://schemas.android.com/apk/res/android"
        android:oneshot="false">
    
            <item android:drawable="@drawable/a1w" android:duration="200">
    
            </item>
            <item android:drawable="@drawable/a1x" android:duration="200">
    
            </item>
            <item android:drawable="@drawable/a1y" android:duration="200">
    
            </item>
            <item android:drawable="@drawable/a1z" android:duration="200">
    
            </item>
    
        <!--根标签为animation-list,其中oneshot代表着是否只展示一遍,设置为false会不停的循环播放动画
           根标签下,通过item标签对动画中的每一个图片进行声明
           android:duration 表示展示所用的该图片的时间长度-->
    
    </animation-list>
    

    代码使用

      //使用图片作为载体
      playnow = (ImageView) findViewById(R.id.playnow);
            AnimationDrawable animationDrawable = (AnimationDrawable) playnow.getDrawable();
            animationDrawable.start();
    

    相关文章

      网友评论

          本文标题:属性动画,帧动画使用

          本文链接:https://www.haomeiwen.com/subject/xeafhxtx.html