美文网首页
Android 旋转图片,不旋转背景

Android 旋转图片,不旋转背景

作者: 钰大人 | 来源:发表于2018-11-02 14:07 被阅读0次

    一个需求是旋转ImageView中的src,而不旋转background。使用的是
    RotateDrawable,仅修改xml的src的drawable即可

    image_rotate.xml 设置

    <?xml version="1.0" encoding="utf-8"?>
    <rotate xmlns:android="http://schemas.android.com/apk/res/android"
        android:visible="true" // 是否可见
        android:pivotX="50%" // 圆心
        android:pivotY="50%" // 圆心
        android:fromDegrees="0" // 起始
        android:toDegrees="360" // 结束
        android:drawable="@drawable/ic_launcher_round"
        >
    </rotate>
    

    代码部分

        // level的MAX_LEVEL为10000.(参照RotateDrawable源码)
        ValueAnimator anim = ValueAnimator.ofInt(0, 10000);
        private void startAnim() {
            anim.setRepeatMode(ValueAnimator.RESTART);
            anim.setRepeatCount(ValueAnimator.INFINITE);
            anim.setDuration(1500);
            anim.setInterpolator(new LinearInterpolator());
            anim.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {
                @Override
                public void onAnimationUpdate(ValueAnimator animation) {
                    int curr = (int)animation.getAnimatedValue();
                    Log.d(TAG, "onAnimationUpdate: curr " + curr);
    
                    mImageView.setImageLevel(curr);
                }
            });
    
            anim.start();
        }
    
        private void stopAnim() {
            if (anim != null && anim.isRunning()) {
                anim.end();
            }
        }
    
    

    相关文章

      网友评论

          本文标题:Android 旋转图片,不旋转背景

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