当在键盘上轻按键盘上的任何按钮以将输入内容放入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
}
}
输出:
如果您在此方面遇到任何困难,请告诉我。