在Android动画方面,我很惊讶地发现这么少的例子。我找到了动画演示,但它们只提供了一小部分你可能想要实现的东西。
对于我的特殊情况,我只是试图围绕中心点动画形状。我可以从演示中看到您可以使用以下内容传递值:
ObjectAnimator.ofObject(
ballHolder
, "name"
, new XYEvaluator()
, position1, position2, position3, position4, positionEtc);
但是我如何传递圆圈的所有值?我相信你不会这样做(如上例所示)。
也许我应该以不同的方式做到这一点?任何帮助将不胜感激。
答案 0 :(得分:1)
尝试此代码并根据需要进行调整:
要实现旋转动画,您可以使用XML定义该动画: 在/ res / anim文件夹下创建一个动画xml文件,名为:rotate_around_center_point.xml
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:shareInterpolator="false">
<rotate android:toDegrees="360"
android:duration="700"
android:pivotX="205"
android:pivotY="180"
android:interpolator="@android:anim/linear_interpolator"/>
</set>
将动画应用于视图:让它说出旋转图像:
ImageView animationTarget = (ImageView) this.findViewById(R.id.testImage);
Animation animation = AnimationUtils.loadAnimation(this,
R.anim.rotate_around_center_point); animationTarget.startAnimation(animation);
OR
使用Java代码动态创建动画:
Animation newAnimation = new RotateAnimation(0, 360, 205, 180);
newAnimation.setDuration(700);
animationTarget.startAnimation(newAnimation);
希望得到帮助。