当在键盘上轻按键盘上的任何按钮以将输入内容放入Swift的文本字段时,是否可以使用一种方法?当任何将输入内容输入到UITextField中的键(例如,不包括大写锁定键和emoji表情/切换语言键之类的键)被敲击时,我该怎么办(例如,在UITextField的rightView中显示图像)?

最佳答案

您可以轻松完成

这是代码:

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

        let userImageView = UIImageView(image: UIImage(named: "user"))
        userImageView.frame = CGRect(x: 0, y: 0, width: 30, height: 30)
        self.txtField.rightViewMode = .always

        if let textFieldValue = textField.text,
            let textFieldRange = Range(range, in: textFieldValue) {
            let newText = textFieldValue.replacingCharacters(in: textFieldRange, with: string)
            if newText == "" {
                textField.rightView = nil
            } else {
                textField.rightView = userImageView
            }
        }
        return true

    }
}


输出:

ios -  swift :有人敲击键盘上的键时,有什么方法吗?-LMLPHP

如果您在此方面遇到任何困难,请告诉我。

07-28 00:04