Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/16.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
Ios 仅在开始编辑文本时显示图像_Ios_Swift_Xcode - Fatal编程技术网

Ios 仅在开始编辑文本时显示图像

Ios 仅在开始编辑文本时显示图像,ios,swift,xcode,Ios,Swift,Xcode,我有一个UIImage和TextField。当用户开始在文本字段中写入时,必须显示图像,当用户完成在该文本字段中的写入时,必须隐藏图像。 怎么做 我尝试的是: func textFieldDidBeginEditing(_ textField: UITextField) { heartImg.isHidden = false } func textFieldDidEndEditing(_ textField: UITextField) { heartImg.isHidden =

我有一个UIImage和TextField。当用户开始在文本字段中写入时,必须显示图像,当用户完成在该文本字段中的写入时,必须隐藏图像。 怎么做

我尝试的是:

func textFieldDidBeginEditing(_ textField: UITextField) {
    heartImg.isHidden = false
}

func textFieldDidEndEditing(_ textField: UITextField) {
    heartImg.isHidden = true
}

您可以将委托设置为UITextfield,在这里您可以获得某些委托方法的通知:

就你而言,它是:

func textFieldDidBeginEditing(_ textField: UITextField)

在代理类中实现此函数,现在可以在此方法中将图像设置为可见/不隐藏

您也可以在“结束编辑”中隐藏它:

试试这个

 func textFieldShouldBeginEditing(_ textField: UITextField) -> Bool {
    textField.background = UIImage(named: "focus.png")
    return true
}

func textFieldShouldEndEditing(_ textField: UITextField) -> Bool {
    textField.background = UIImage(named: "nofocus.png")
    return true
}

func textFieldShouldReturn(_ textField: UITextField) -> Bool {
    textField.resignFirstResponder()
    return true
}
或在rightView/leftview上设置图像

textField.rightViewMode = .unlessEditing
textField.leftView = UIImageView(image: UIImage(named: "textfield_edit_icon.png"))
试试这个

将图像视图作为左视图添加到文本字段

并将文本字段leftViewMode设置为.whileEditing

    let LeftView = UIImageView(image: UIImage(named: "yourImage")
    yourTextfield.leftView = LeftView
    yourTextfield.leftViewMode = .whileEditing

使用Textfield委托方法,并在您想要隐藏或显示时根据您的要求使用它您甚至搜索过吗?我尝试过以下方法:func Textfield didbeginediting(Textfield:UITextField){heartImg.ishiden=false}func Textfield didebendediting(Textfield:UITextField){heartImg.isHidden=true}请确保设置textfield的委托:self.textfield.delegate=self代码的输出是什么?
    let LeftView = UIImageView(image: UIImage(named: "yourImage")
    yourTextfield.leftView = LeftView
    yourTextfield.leftViewMode = .whileEditing