【问题标题】:Dismiss keyboard after one character typed输入一个字符后关闭键盘
【发布时间】:2021-02-11 08:28:38
【问题描述】:

我想在输入一个字符后关闭键盘。我试试这段代码:

  func textField(_ textField: UITextField, shouldChangeCharactersIn range: NSRange, replacementString string: String) -> Bool {

    if string == "" {
        return true
    }

    if let characterCount = textField.text?.count {
        if characterCount == 1 {
            return textField.resignFirstResponder()
        }
    }
    return true
}

但只有在输入 2 个字符后,才会使用此代码关闭键盘。我希望在输入一个字符后关闭键盘。

【问题讨论】:

    标签: ios swift uikit uitextfield


    【解决方案1】:

    试试这个!

    override func viewDidLoad() {
        super.viewDidLoad()
           
        let textField = UITextField()
        textField.addTarget(self, action: #selector(textField_editingChanged), for: .editingChanged)
        view.addSubview(textField)
            
    }
        
    @objc func textField_editingChanged(sender:UITextField) {
        if sender.text?.count == 1 {
            view.endEditing(true)
        }
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-08-26
      • 2018-01-23
      • 1970-01-01
      • 2016-04-15
      • 2016-06-18
      • 1970-01-01
      • 2018-12-24
      • 1970-01-01
      相关资源
      最近更新 更多