0

我有一个动画,当我点击它时它会向右移动。但是,当我尝试再次单击它时,我必须在它之前所在的位置单击它。

我该如何解决这个问题以及它可以在哪里点击它的新位置?

这是我的代码

   public void sideBar()
   {

       ImageView sidebar = (ImageView)findViewById(R.id.sidebar);

       if(out == 0)
       {
       mSlideInRight = AnimationUtils.loadAnimation(this, R.anim.slide_in_right);
       mSlideInRight.setFillAfter(true);
       sidebar.startAnimation(mSlideInRight);
       out= 1;
       }
       else if(out == 1)
       {
               mSlideInLeft = AnimationUtils.loadAnimation(this, R.anim.slide_in_left);
               sidebar.startAnimation(mSlideInLeft);
               out=0;
       }

   }
4

1 回答 1

2

发生这种情况是因为它ImageView本身并没有“实际”移动。您必须实现一个动画侦听器并ImageView在动画结束时移动 。

请参考这个问题:Android Animation Flicker 和这个:Android Button Don't Respond After Animation

于 2012-10-24T03:43:37.270 回答