ObjectAnimator旋转动画

现在在做一个音乐播放器,播放界面需要用到旋转的动画,像网易音乐一样,就用到了ObjectAnimator,再次遇到一个问题,就是播放音乐的时候点击暂停在点击播放这个过程中,旋转的动画不要从头开始转,而是从暂停的位置继续旋转。

1.首先看一下旋转的代码

 /**
     * 增加旋转动画
     */
    ObjectAnimator animtorAlpha;

    public void startRotation() {
    //设置旋转的样式
        animtorAlpha = ObjectAnimator.ofFloat(this, "rotation", 0f, 720f);
        //旋转不停顿
        animtorAlpha.setInterpolator(new LinearInterpolator());
        //设置动画重复次数
        animtorAlpha.setRepeatCount(100);
        //旋转时长
        animtorAlpha.setDuration(36000);
        //开始旋转
        animtorAlpha.start();

2.暂停旋转

   /**
     * 暂停旋转
     */
    public void pauseRotation() {
        animtorAlpha.pause();
    }

3.停止旋转

  /**
     * 停止旋转
     */
    public void stopRotation() {
        animtorAlpha.end();
    }

4.恢复

  /**
     * 恢复动画
     */
    public void resumeRotation() {
        animtorAlpha.resume();
    }

5.我遇到的问题

我遇到的问题就是暂停之后在点击播放,旋转动画从头开始转,这样总感觉感觉不舒服,原来我是在暂停之后在点击播放的时候调用

  animtorAlpha.start();

然后在网上找,有一个 animtorAlpha.resume();方法可以从暂停的位置继续旋转而不是从头开始转。怎么感觉跟activity的生命周期一样。

6.旋转样式参数

animtorAlpha = ObjectAnimator.ofFloat(this, “rotation”, 0f, 720f);
对这段代码不清楚的可以看看这篇文章
这里面讲的挺详细的,我只是把我的问题记录一下,以后说不定能用到。
项目地址

  • 4
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值