簡體   English   中英

不使用情節提要調用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()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM