animateWithDuration和UIViewAnimationOptionsAllowUserInteraction

时间:2015-01-22 23:41:14

标签: ios button swift clickable user-interaction

我制作了一个简单的应用程序,其中涉及一个按钮在屏幕上移动,我希望用户能够在移动时单击它。我有这个:

func bonus ()
    {
        UIView.animateWithDuration(14, 
        delay: 0.1, 
        options: UIViewAnimationOptionsAllowUserInteraction, 
        animations: {
           self.bonusbutton.center = CGPointMake(self.bonusbutton.center.x +         1000, self.bonusbutton.center.y)
            }, completion : nil)
    }

这给了我"use of unresolved identifier UIViewAnimationOptionAllowUserInteraction"错误。

我尝试了选项:UIViewAnimationOptions.AllowUserInteraction编译,但不允许按钮在动画期间可点击。

我访问了developer portal,但我对Swift来说还是个新手。我究竟做错了什么?谢谢!

1 个答案:

答案 0 :(得分:2)

您可以使用.AllowUserInteraction作为选项,但这不能解决您的问题。当您执行动画(使用animateWithDuration)时,视图的帧将立即设置为最终位置,因此触摸点实际上将在那里,而不是您看到移动视图的位置。如果您希望用户能够与按钮进行交互,则必须通过使用计时器逐步移动它来为其设置动画。