帧动画+补间动画
程序员文章站
2022-03-25 14:56:07
...
帧动画+补间动画
帧动画得在drawable下创建一个xml文件
在aniation-list下添加item 两个属性 一个drawable放图片 duration是图片显示的时间
补间动画
分为透明 旋转 平移 缩放 还可以把他们组合起来
旋转
<alpha xmlns:android="http://schemas.android.com/apk/res/android"
android:duration="3000"
android:fillBefore="true"
android:fromAlpha="1.0"
android:toAlpha="0.0">
</alpha>
Animation animation = AnimationUtils.loadAnimation(MainActivity.this, R.anim.alpha);
imageView.startAnimation(animation);
平移
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:fromXDelta="0"
android:fromYDelta="0"
android:toXDelta="200"
android:toYDelta="300"
android:duration="3000"
android:fillBefore="true">
</translate>
Animation animation = AnimationUtils.loadAnimation(MainActivity.this, R.anim.translate);
imageView.startAnimation(animation);
旋转
<?xml version="1.0" encoding="utf-8"?>
<rotate xmlns:android="http://schemas.android.com/apk/res/android"
android:fromDegrees="0"
android:toDegrees="720"
android:pivotX="200"
android:pivotY="200"
android:duration="3000"
android:fillBefore="true">
Animation animation = AnimationUtils.loadAnimation(MainActivity.this, R.anim.rotate );
imageView.startAnimation(animation);
缩放
ScaleAnimation scaleAnimation = new ScaleAnimation(1, 2, 1, 4, ScaleAnimation.ABSOLUTE, 100, ScaleAnimation.ABSOLUTE, 100);
scaleAnimation.setFillBefore(true);
scaleAnimation.setDuration(3000);
// scaleAnimation.setRepeatMode(ScaleAnimation.REVERSE);
// scaleAnimation.setInterpolator(new BounceInterpolator());
imageView.startAnimation(scaleAnimation);