如何获取启动动画的View对象......?

时间:2011-09-27 12:32:53

标签: android animation android-layout android-widget

我有3个图像视图,其中我开始了相同的动画(翻译)

我有动画监听器,在onAnimationEnd(动画动画)方法中,

我想知道动画结束的图像视图..?

从动画对象中我怎么知道它是从哪个开始的??

提前致谢..!

1 个答案:

答案 0 :(得分:33)

嗯,你不知道动画结束的对象是什么。 AnimationListener的整个目的是监听动画而不是对象。

<强>解决方案


1 - 创建您自己的动画类,并在其中保存对动画对象的引用。

这将允许您在函数onAnimationEnd中将动画转换为YourAnimation并获取参考。


2 - 更简单的解决方案是创建自己的AnimationListener,其中包含动画对象的引用。

例如:

public class MyAnimationListener implements AnimationListener {
    ImageView view;
    public void setImage(ImageView view) {
        this.view = view;
    }
    public void onAnimationEnd(Animation animation) {
        // Do whatever you want
    }
    public void onAnimationRepeat(Animation animation) {
    }
    public void onAnimationStart(Animation animation) {
    }
}

因此,当您想要为ImageView设置动画时:执行以下操作:

MyAnimationListener listener = new MyAnimationListener();
listener.setImage(myImage);

myAnimation.setAnimationListener(listener);