在UITableView单元格触摸上防止键盘解除

时间:2015-05-29 18:45:49

标签: ios iphone uitableview uitextfield

我有一个UITableView,里面有几行按钮。 同一页面包含UITextField控件。 一旦我激活了TextField输入,即使按下UITableView中单元格内的按钮,我也希望它保持活动状态。

现在,UITableView上的所有触摸都会关闭我的键盘并且不会触发UITouchUpInside。我试图禁用Cancellable content touch,但它没有帮助。

2 个答案:

答案 0 :(得分:1)

您可以尝试使用自定义手势识别器

var tap:UITapGestureRecognizer = UITapGestureRecognizer(target: self, action: "DismissKeyboard")
self.view.addGestureRecognizer(tap)

然后添加动作

func DismissKeyboard() {
    self.view.endEditing(false)
}

如果用户点击屏幕上的任何位置,它就不会关闭键盘,因为它不会结束编辑。

答案 1 :(得分:1)

UITextFieldDelegate设置UITextField并实施textFieldShouldEndEditing并返回NO / false。

这样可以防止丢失第一响应者状态(这是弹出键盘的原因)。