属性动画和帧动画的使用

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


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();
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值