imageView动画出错了

时间:2016-06-08 21:00:33

标签: ios swift animation

我在我的imageView上有一个动画,它应该可以动画使用imageView进行滑动。 问题是,当我第一次点击时,它从y跳下200 px,然后动画回到零。 我第二次点击时,动画完全按照它应该做的,然后向上移动,负200px。

对我来说,第二次有效,但不是第一次。 我已经尝试将imageView的原点设置为0,0,以便有一个起点,因为我认为这是导致跳跃和奇怪的动画,但同样的交易。

UIView.animateWithDuration(10.0, animations: {() -> Void in

        self.imageView.frame = CGRectMake(self.imageView.frame.origin.x, -200, self.imageView.frame.size.width, self.imageView.frame.size.height)
    })

1 个答案:

答案 0 :(得分:1)

如评论中所述,您有一个约束。将该约束连接到您的代码,并在动画中更新它。然后运行public void rotationAnimation(ImageView button, int source1, int source2){ if(isLikeClicked){ button.setImageResource(source1); button.startAnimation(rotate_backward); isLikeClicked = false; }else{ button.setImageResource(source2); button.startAnimation(rotate_forward); isLikeClicked = true; } ChangeLikeCount(); if(isReadyToPost) if(!isLikeClicked){ Like like = new Like(); like.execute(ServerCons.HOST + "unlike"); }else{ Like like = new Like(); like.execute(ServerCons.HOST + "like"); } new Handler().postDelayed(new Runnable() { @Override public void run() { // I thought the solution could be there } }, 2000); }

self.view.layoutIfNeeded()