单击textField时隐藏键盘

时间:2017-10-03 13:25:52

标签: ios swift uitextfield uikeyboard

每次用户点击名为typeDeProbleme的textField时,我都想隐藏键盘。所以,我做了类似下面的事情(在if条件下),在我的理解中应该有所作为,但不幸的是,它不是。每次我点击typeDeProbleme时,键盘都会卡住,除非我点击另一个textField,否则无法隐藏。为了您的信息,typeDeProbleme是链接到PickerView的textField。我还在键盘顶部附加了一个工具栏,其上有一个按钮X来隐藏键盘。任何人都可以向我解释问题在哪里?

enter image description here

func textFieldDidBeginEditing(_ textField: UITextField) {
    textField.returnKeyType = .next

    if textField == self.typeDeProbleme {
        textField.endEditing(true)// hide keyboard
        textField.resignFirstResponder() //hide keyboard
        self.pbTypePickerV.isHidden = false
    }else{
        keyboardDidShow(vvv: textField)
    }
}

1 个答案:

答案 0 :(得分:0)

使用此方法代替textFieldDidBeginEditing

    func textFieldShouldBeginEditing(_ textField: UITextField) -> Bool {
    if textField == typeDeProbleme {
        self.view.endEditing(true)
        return false
    }
    return true
}