Swift:影响button点击的UITextfield? 由于animation无法input文字?

我有一个奇怪的问题,我的UIViewanimation和一个UITextfield – 我需要能够点击一个button,让buttonanimation显示一个文本字段,以便用户可以在文本字段中input文本,然后当用户按下再次button,用户交互在文本字段被禁用,并且button移回。

这就是我的意思 – 在这里输入图像说明

我已经在一定程度上通过将文本字段放置在button的后面并在开始时将其禁用,然后当单击该button时buttonanimation起来以显示文本字段,

在这里输入图像说明

问题是,当用户去编辑文本字段时,button点击正在被触发(或者可能只是animation)。 所以当他们打字的时候,button只是向下移动并覆盖文本框。

这很奇怪,因为我有一个布尔值来设置button是向上还是向下移动的,我不认为这是翻转的,因为通常button在文本区下面移动,这是不应该发生的。

这是我如何做到这一点:

@IBAction func enterText(sender: UIButton) { print("time to enter text") if !textOpen { UIView.animateWithDuration(0.5, animations: { self.textBtn.center.y -= self.textBtn.bounds.height }) happenedTxt.userInteractionEnabled = true } else { UIView.animateWithDuration(0.5, animations: { self.textBtn.center.y += self.textBtn.bounds.height }) happenedTxt.userInteractionEnabled = false } textOpen = !textOpen } 

当按下button时,如何才能触发button的移动? 为什么文本框会触发animation? 有没有人打电话让button回到原来的位置?