未使用故事板调用 UITextField 的代表
Delegate of UITextField not being called using storyboard
我试图使用 UITextField
来处理用户输入,我实现了它的委托功能。
这是我从故事板拖到 viewController
的变量
class DailPadViewController: UIViewController, UITextFieldDelegate{
@IBOutlet weak var numberTextField: UITextField!
这是我在 viewDidload() 中调用的委托
override func viewDidLoad() {
super.viewDidLoad()
PermissionAppUser.AskAudioPermission()
numberTextField.isUserInteractionEnabled = false
numberTextField.delegate = self
customizeBtnStyle()
let longPress = UILongPressGestureRecognizer(target: self, action: #selector(deletedAll))
delete.addGestureRecognizer(longPress)
}
我实现了这个委托,但它从未调用过...
func textFieldDidBeginEditing(_ textField: UITextField) {
print("Text begin editing")
}
func textField(_ textField: UITextField, shouldChangeCharactersIn range: NSRange, replacementString string: String) -> Bool {
let currentText = textField.text ?? ""
guard let stringRange = Range(range, in: currentText) else { return false }
let updatedText = currentText.replacingCharacters(in: stringRange, with: string)
return updatedText.count <= 9
}
编辑:添加函数 viewDidload
如果您不想显示键盘,请使用此代码
numberTextField.inputView = UIView()
我试图使用 UITextField
来处理用户输入,我实现了它的委托功能。
这是我从故事板拖到 viewController
的变量class DailPadViewController: UIViewController, UITextFieldDelegate{
@IBOutlet weak var numberTextField: UITextField!
这是我在 viewDidload() 中调用的委托
override func viewDidLoad() {
super.viewDidLoad()
PermissionAppUser.AskAudioPermission()
numberTextField.isUserInteractionEnabled = false
numberTextField.delegate = self
customizeBtnStyle()
let longPress = UILongPressGestureRecognizer(target: self, action: #selector(deletedAll))
delete.addGestureRecognizer(longPress)
}
我实现了这个委托,但它从未调用过...
func textFieldDidBeginEditing(_ textField: UITextField) {
print("Text begin editing")
}
func textField(_ textField: UITextField, shouldChangeCharactersIn range: NSRange, replacementString string: String) -> Bool {
let currentText = textField.text ?? ""
guard let stringRange = Range(range, in: currentText) else { return false }
let updatedText = currentText.replacingCharacters(in: stringRange, with: string)
return updatedText.count <= 9
}
编辑:添加函数 viewDidload
如果您不想显示键盘,请使用此代码
numberTextField.inputView = UIView()