gpt4 book ai didi

ios - 禁止用户在编辑文本字段时与 UI 交互(键盘除外)

转载 作者:可可西里 更新时间:2023-11-01 02:08:55 24 4
gpt4 key购买 nike

Swift 新手。

当用户单击文本字段开始输入时,是否有办法禁用除在该文本字段中输入以外的所有用户交互?我想要它,以便用户无法在文本字段外单击,并且应该按返回键关闭键盘,再次启用用户交互(我设置了关闭键盘部分)。

我知道 isUserInteractionEnabled 函数可以停止所有交互,但我仍然希望用户能够与键盘进行交互。

谢谢

最佳答案

因此,我想到的第一个想法是在您专注于 UITextField 实例时禁用 View 中的每个 UI 元素。

创建一个函数,它将获取一个 UI 元素作为参数(例如 UITextField)。在函数的主体中开始检查每个 UI 元素并循环禁用每个元素,这将不等于传递的参数。您可以另外验证文本字段的类型和文本。

这是函数体的草稿:

func disableAll(exceptInput element: UITextField) {
for item in self.view.subviews {
if item != element {
item.isUserInteractionEnabled = false
} else {
item.isUserInteractionEnabled = true
}
}
}

并在文本字段操作中执行此方法,例如。在 onDidStart 中。

很明显,不要忘记为用户交互启用所有元素。代码很简单:

func enableAll() {
for item in self.view.subviews {
item.isUserInteractionEnabled = true
}
}

您可以在每个 UITextField 的 onDidEnd IBAction 上执行此方法。如果您想运行正常的应用程序行为,最后一步是必要的。

关于ios - 禁止用户在编辑文本字段时与 UI 交互(键盘除外),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41556652/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com