在视图中隐藏键盘与Swift中的多个文本字段

时间:2017-07-11 09:14:07

标签: ios swift view keyboard textfield

我有3个文本字段和一个pickerView,当其中一个字段(m_unit)处于活动状态时取消隐藏,所以我试图隐藏这个字段的键盘:

func textFieldDidBeginEditing(_ textField: UITextField) {
        textField.returnKeyType = UIReturnKeyType.done
        save_button.isEnabled = false
        if textField == self.m_unit {
            self.drop_down.isHidden = false
            textField.endEditing(true)
        }

如果点按m_unit时没有其他编辑文字字段,则可以正常工作。在这种情况下,键盘不会消失。换句话说,当我点击一些文本字段时,它显示键盘,然后点击m_unit字段,但键盘保持不变。我该如何解决这个问题?

4 个答案:

答案 0 :(得分:0)

textField.resignFirstResponder()

答案 1 :(得分:0)

试试这段代码:

public function Controller(Posts $post){
    $post->update(['created_at'=>Carbon::today()]);
}

答案 2 :(得分:0)

因为看起来你想要显示UIPickerView而不是键盘来显示给定的文本字段(m_unit),我会使用不同的方法:)

您可以将UIPickerView设置为UITextField的inputView(在viewDidLoadloadView中)

self.m_unit.inputView = yourPickerView

您还可以查看此问题: UIPickerView as inputView of UITextField 这可能是你的重复;)

答案 3 :(得分:0)

  1. 选择器视图textfield false

      func textField(_ textField: UITextField, shouldChangeCharactersIn range: NSRange, replacementString string: String) -> Bool {
    //print("While entering the characters this method gets called")
    
    if(textField == pickerViewTextField){
        return false;
       }
    
      return true;
     }
    
  2. 用户文本字段委托下面的代码隐藏按键返回

      func textFieldShouldReturn(_ textField: UITextField) -> Bool {
    
       textField.resignFirstResponder()
       return true
     }
    
  3. 不要忘记使用UITextFieldDelegate