Android AnimationListener不会受到攻击
我想用两种不同的动画创建某种imageGallery。 单击当前可见图像时,“OK图像”将淡入(1秒,不重复),动画完成后,应显示下一个图像 每个图像都有一个无限重复的动画(普通视图、缩放视图) 所以Android AnimationListener不会受到攻击,android,animation,listener,Android,Animation,Listener,我想用两种不同的动画创建某种imageGallery。 单击当前可见图像时,“OK图像”将淡入(1秒,不重复),动画完成后,应显示下一个图像 每个图像都有一个无限重复的动画(普通视图、缩放视图) 所以 步骤1:图像的无限动画(法线=>缩放=>法线..) 第二步:点击 步骤3:显示“正常图像”(淡入1秒) 第一步 问题是,OK动画的Animation Listener被命中,而无限动画的Animationlistener没有 @Override public void onCreate(Bun
- 步骤1:图像的无限动画(法线=>缩放=>法线..)
- 第二步:点击
- 步骤3:显示“正常图像”(淡入1秒)
- 第一步
@Override
public void onCreate(Bundle savedInstanceState) {
fadeInOKAnimation = AnimationUtils.loadAnimation(this, R.anim.fadeinonce);
fadePermanentAnimation = AnimationUtils.loadAnimation(this, R.anim.fadeininfinite);
fadeInOKAnimation.setAnimationListener(fadeInOKAnimationListener);
fadePermanentAnimation.setAnimationListener(fadePermanentAnimationListener);
}
AnimationListener fadeInOKAnimationListener = new Animation.AnimationListener() {
public void onAnimationEnd(Animation animation)
{
ThreadHelper.sleep(500);
imgMessung.clearAnimation();
int currentImageId = currentStateImage.getNormalImage();
imgMessung.clearAnimation();
imgMessung.setImageResource(currentImageId);
imgMessung.startAnimation(fadePermanentAnimation);
}
public void onAnimationRepeat(Animation animation) { }
public void onAnimationStart(Animation animation) { }
};
AnimationListener fadePermanentAnimationListener = new Animation.AnimationListener() {
public void onAnimationEnd(Animation animation) { }
public void onAnimationRepeat(Animation animation) {
StateImage currentStateImage = messung.GetCurrentImage();
if(currentImageState == ImageState.Normal)
{
int currentImageId = Integer.parseInt(currentStateImage.getNormalImage());
imgMessung.setImageResource(currentImageId);
}
else
{
int currentImageId = Integer.parseInt(currentStateImage.getZoomedImage());
imgMessung.setImageResource(currentImageId);
}
}
public void onAnimationStart(Animation animation) { }
};
无尽的动画没有尽头,所以不会触发任何东西。您可能想使用来了解动画在哪里重新启动(但是,如果您需要一些元素来无休止地进行动画制作(即旋转忙碌标记),那么您需要无休止的重复做什么,将其包装在,即,
FrameLayout
上,并将动画和侦听器放在那里我已经在为fadePermanentAnimationListener动画使用onAnimationRepeat。但这不会被击中