我有一个视图(灰色背景),另一个视图带有UITextField
。
当我点击灰色背景时,我希望带有UITextField
的视图以动画消失(移至顶部)
当我点击返回键(虚拟键盘)时,动画很流畅,但是当我点击灰色背景时,它会在没有动画的情况下消失。当我在完成时注释vueRecherche.isHidden = true
时,它没问题,但我想隐藏它!
这是我的功能
private func fermeRecherche() {
if self.constraintVueRecherche_Top.constant == -5 {
return
}
self.txtRercherche.endEditing(true)
UIView.animate(withDuration: 0.3, animations: {
self.constraintVueRecherche_Top.constant = -5
self.vueFondGris.alpha = 0.0
self.view.layoutIfNeeded()
}, completion: { termine in
self.vueRecherche.isHidden = true
self.vueFondGris.isHidden = true
})
}
通过此调用,动画很流畅:
func textFieldDidEndEditing(_ textField: UITextField) {
fermeRecherche()
}
但不是这个:
let tap=UITapGestureRecognizer(target: self, action: #selector(self.tapFondGris(_:)))
vueFondGris.addGestureRecognizer(tap)
func tapFondGris(_ sender: UITapGestureRecognizer) {
fermeRecherche()
}
任何想法?
由于