我面对一些事情,我无法理解。
ios - 代理TextField-LMLPHP
在我观看的教程中,讲师按下(cntrl+click)delegate选项并将其拖到ViewController类中。然后,textfield选项变得像照片一样。我找了很多,找到了一个解释,但我不能完全理解。
说明:要使用UITextFieldDelegate方法,ViewController类必须采用此协议。但是,在使用任何方法之前,我们必须选择此委托选项。
我不能理解这个选择。它的好处是什么?

最佳答案

因此,为了使用它并理解它,请尝试以下步骤:
我对你的类采用UITextFieldDelegate协议

    class MyViewController: UIViewController, UITextViewDelegate {

2实现UITextViewDelegate的回调方法。例如:
    //MARK: UITextViewDelegate

    func textField(_ textField: UITextField, shouldChangeCharactersIn range: NSRange, replacementString string: String) -> Bool {
        print(textField.text ?? "")
        return true
    }

ios - 代理TextField-LMLPHP
这些方法用于管理和验证来自TextView的文本。
也许你应该读一读protocols
或者,如果您不理解为什么要直接从脚本设置委托,这是因为这样您就不会在类中声明额外的属性。我会做得天衣无缝,你不会在你的课堂上:
    @IBOutlet weak var myTextField: UITextField!

    //...
    override func viewDidLoad() {
        super.viewDidLoad()
        myTextField.delegate = self
    }

关于ios - 代理TextField,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45756479/

10-10 21:13