繁体   English   中英

禁用UITextField上的触摸但不是所有用户交互

[英]Disable touches but not all user interaction on UITextField

我有一个UITextField,但我希望能够控制它何时被聚焦以及什么时候没有聚焦。

为了实现这一点,我需要能够阻止该文本字段上的触摸事件。 我知道我可以在它前面放一个按钮并手动执行它,但我想知道是否有任何方法只是禁用元素上的触摸。

非常感谢。

似乎没有办法用UITextField的属性来阻止触摸。 我通过在文本字段上放置UIView来阻止触摸来解决这个问题。 我使用属性检查器将UIView设置为“Clear Color”。 适用于我的应用程序。

userInteractionEnabled属性怎么样?

我必须在编辑时进行光标交互,所以在设置isFirstResponder()之前我设置isUserInteractionEnabled = true并且在结束编辑时将其设置为false

@IBAction func editTapped(_ sender: UIButton) {
    textField.isUserInteractionEnabled = true
    textField.becomeFirstResponder()
}


func textFieldShouldEndEditing(_ textField: UITextField) -> Bool {
    print(textField.textValue)

    textField.isUserInteractionEnabled = false

    return true
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM