美文网首页
Vickate_实时获取输入框(textField)内容

Vickate_实时获取输入框(textField)内容

作者: Vickate | 来源:发表于2018-02-24 16:16 被阅读0次

    (1)要检测文本框内容的变化,我们需要让新界面的Controller遵循一个文本协议 UITextFieldDelegate

    同时在 viewDidLoad 方法内将文本框的代理设置为当前实例。

    然后实现 textField 的 shouldChangeCharacters 方法就能在文本框将要变化的时候执行一些代码。

    (2)但这个只是将要变化时执行,而不是变化后。比如在这个方法内打印出文本框的内容,会发现每当我们改变文本框的内容时,打印出来的是上一次的内容。

    比如先输入1,打印出来是空。再输入2,文本框上是12,但打印出来却是1.

    常规的方法:
    (1)代理方法里面字符串替换
    (2)观察者的方式

    简易方法:
    TextField添加事件,响应输入框的编辑事件(allEditingEvents)就可以获取最新的内容。

    textfield.addTarget(self, action: #selector(textChange(_:)), for: .allEditingEvents)
    
    @objc func textChange(_ textField: UITextField) {
            print(textfield.text ?? "")
        }
    

    妈妈再也不用担心输入框头疼的问题了。

    相关文章

      网友评论

          本文标题:Vickate_实时获取输入框(textField)内容

          本文链接:https://www.haomeiwen.com/subject/pyzqxftx.html