Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
检查Swift中的文本字段信息_Swift_Xcode - Fatal编程技术网

检查Swift中的文本字段信息

检查Swift中的文本字段信息,swift,xcode,Swift,Xcode,我在文本字段旁边有一个UIImage。如果文本字段通过了格式测试,我希望图像更改(为检查)。因此,如果输入了六个字符,图像将发生变化。我尝试使用textfielddichange,但我认为这个函数只有在字段第一次更改时才会被调用。是否有一个函数可以在每次输入字符时调用?有更好的方法吗?根据。在讨论部分,它说 每当用户操作导致其文本更改时,文本字段都会调用此方法。使用此方法验证用户键入的文本 “此方法”指的是textField(uu:shouldChangeCharactersIn:replace

我在文本字段旁边有一个UIImage。如果文本字段通过了格式测试,我希望图像更改(为检查)。因此,如果输入了六个字符,图像将发生变化。我尝试使用textfielddichange,但我认为这个函数只有在字段第一次更改时才会被调用。是否有一个函数可以在每次输入字符时调用?有更好的方法吗?

根据。在讨论部分,它说

每当用户操作导致其文本更改时,文本字段都会调用此方法。使用此方法验证用户键入的文本

“此方法”指的是
textField(uu:shouldChangeCharactersIn:replacementString:)

这是完整的方法:

func textField(_ textField: UITextField, shouldChangeCharactersIn range: NSRange, replacementString string: String) -> Bool {
    <code>
}

对编辑已更改事件使用操作。这可以通过iAction或手动添加目标来实现

iAction

在视图控制器中添加此方法,并将插座连接到xib或情节提要中的editingChanged事件:

@IBAction func textFieldChanged(_ sender: UITextField) {
    // Your code here
}
添加目标

override func viewDidLoad() {
    super.viewDidLoad()

    yourTextField.addTarget(self, action: #selector(textFieldChanged(_:)), for: .editingChanged)
}

func textFieldChanged(_ sender: UITextField) {
    // Your code here
}

谢谢我将iAction与if/else语句一起使用。