当前位置: 首页 > 知识库问答 >
问题:

如何检查 UI 文本字段何时更改?

微生耘豪
2023-03-14

我正在尝试检查文本字段何时更改,也相当于用于text View-textViewDidChange的函数,到目前为止我已经这样做了:

  func textFieldDidBeginEditing(textField: UITextField) {
        if self.status.text == "" && self.username.text == "" {
            self.topRightButton.enabled = false
        } else {   
            self.topRightButton.enabled = true
        }
    }

哪种方法有效,但是一旦按下文本字段,就会启用topRightButton,我希望仅在实际键入文本时才启用它?

共有3个答案

夏晋
2023-03-14
textField.addTarget(self, action: #selector(ViewController.textFieldDidChange(_:)),
                          for: .editingChanged)

和处理方法:

@objc func textFieldDidChange(_ textField: UITextField) {

}
textField.addTarget(self, action: #selector(ViewController.textFieldDidChange(_:)),
                          for: UIControlEvents.editingChanged)

和处理方法:

@objc func textFieldDidChange(_ textField: UITextField) {

}
textField.addTarget(self, action: #selector(textFieldDidChange(textField:)), for: .editingChanged)

和处理方法:

func textFieldDidChange(textField: UITextField) { 

}
督弘化
2023-03-14

您可以在接口生成器中建立此连接。

按住 Ctrl 单击界面生成器中的文本字段。

艾泉
2023-03-14

SWIFT银行代码

Swift 4.2

textfield.addTarget(self, action: #selector(ViewController.textFieldDidChange(_:)), for: .editingChanged)

@objc func textFieldDidChange(_ textField: UITextField) {

}

SWIFT银行代码3

textField.addTarget(self, action: #selector(ViewController.textFieldDidChange(_:)), for: .editingChanged)

func textFieldDidChange(_ textField: UITextField) {

}

环球时报 2.2

textField.addTarget(self, action: #selector(ViewController.textFieldDidChange(_:)), forControlEvents: UIControlEvents.EditingChanged)

func textFieldDidChange(textField: UITextField) {
    //your code
}

目标C

[textField addTarget:self action:@selector(textFieldDidChange:) forControlEvents:UIControlEventEditingChanged];

而textFieldDidChange方法是

-(void)textFieldDidChange :(UITextField *) textField{
    //your code
}
 类似资料:
  • 问题内容: 在我的模型中,我有: 第一次修改效果很好。 有人修改别名上的时,如何获取新图像?其次,是否有更好的方法来缓存远程映像? 问题答案: 本质上,你想覆盖方法,以便保留原始值的副本。这样一来,你就不必进行其他数据库查找(这总是一件好事)。

  • 问题内容: 我是新手。每当此字段发生“更改”时,我都试图从HTML“文件”字段中读取上载的文件路径。如果我使用“ onChange”,则可以使用,但是当我使用“ ng- change”以角度的方式使用时,则无法使用。 fileNameChaged() 从不调用。Firebug也不会显示任何错误。 问题答案: 不支持文件上传控件 https://github.com/angular/angular.

  • 问题内容: 我正在尝试检查文本字段何时更改,也等同于用于textView的功能- 到目前为止,我已经做到了: 哪种方法有效,但是只要在按下文本字段时就启用,我希望仅在实际键入文本时才启用它? 问题答案: 迅速 斯威夫特4.2 和 SWIFT 3和Swift 4.1 和 SWIFT 2.2 和 目标C 和textFieldDidChange方法是

  • 问题内容: 我正在下面的代码中检查和文本字段中是否有任何输入。 当我按下按钮时,该语句没有执行任何操作。 问题答案: 仅将textfield 对象 与空字符串进行比较不是解决此问题的正确方法。您必须比较文本字段的属性,因为它是兼容类型并且包含您要查找的信息。 Swift 2.0: 守卫 : 如果 : Swift 3.0: 守卫 : 如果 :

  • 我还担心这会增加数据库的读/写次数。 有人能帮帮我吗?提前致谢

  • 问题内容: 我在使用iOS SDK 8的Swift时遇到一个问题 我使用了回调来获取数据背景,并且在获取数据时,我想设置一个文本字段值并更新屏幕。 这是我的代码: 运行此代码,将正确获取数据并且txtTest没有更新,但是当我点击txtTest时,将显示该值。那么有什么方法可以强制更新UI?或向UI线程发送消息? 问题答案: 每个人都想在Swift中进行UI更新时遇到的同一问题:永远不要在任何辅助