Android:围绕点无限循环循环动画图像

时间:2015-02-06 21:51:34

标签: android animation geometry

我需要围绕无限循环中的点循环移动搜索图标以模拟正在进行的搜索(直到用户停止搜索)。 我按照这个链接提供的问题答案: Move an Image in circular path in android

我将这两行添加到我的代码中,因为我需要动画是无限的:

anim.setRepeatMode(Animation.INFINITE);
anim.setRepeatCount(Animation.INFINITE);

问题在于,当第一个循环循环结束时,图标会返回一个框架到其原始位置(在xml中声明的位置),然后返回到应该是循环的下一个正确位置。

Circular path

如果图标没有从其原始居中位置传递,我如何获得平滑动画?

1 个答案:

答案 0 :(得分:0)

下面的代码将使图像视图绕其中心循环旋转无限长的时间,而不会启动图标返回到其原始位置。

private static final float ROTATE_FROM = 00.0f;
private static final float ROTATE_TO = 360.0f;
private static final int DURATION = 1000;

protected void startLoading(ImageView iv) {
    RotateAnimation r = new RotateAnimation(ROTATE_FROM,
            ROTATE_TO, Animation.RELATIVE_TO_SELF,
            0.5f, Animation.RELATIVE_TO_SELF, 0.5f);
    r.setDuration(DURATION);
    r.setRepeatCount(Animation.INFINITE);
    r.setFillAfter(true);
    r.setInterpolator(new LinearInterpolator());

    iv.startAnimation(r);
}