Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/222.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android AnimationListener不会受到攻击_Android_Animation_Listener - Fatal编程技术网

Android AnimationListener不会受到攻击

Android AnimationListener不会受到攻击,android,animation,listener,Android,Animation,Listener,我想用两种不同的动画创建某种imageGallery。 单击当前可见图像时,“OK图像”将淡入(1秒,不重复),动画完成后,应显示下一个图像 每个图像都有一个无限重复的动画(普通视图、缩放视图) 所以 步骤1:图像的无限动画(法线=>缩放=>法线..) 第二步:点击 步骤3:显示“正常图像”(淡入1秒) 第一步 问题是,OK动画的Animation Listener被命中,而无限动画的Animationlistener没有 @Override public void onCreate(Bun

我想用两种不同的动画创建某种imageGallery。 单击当前可见图像时,“OK图像”将淡入(1秒,不重复),动画完成后,应显示下一个图像

每个图像都有一个无限重复的动画(普通视图、缩放视图)

所以

  • 步骤1:图像的无限动画(法线=>缩放=>法线..)
  • 第二步:点击
  • 步骤3:显示“正常图像”(淡入1秒)
  • 第一步
问题是,OK动画的Animation Listener被命中,而无限动画的Animationlistener没有

@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。但这不会被击中