gpt4 book ai didi

ios - EditingDidBegin 事件不会在 swift 中第二次触发

转载 作者:行者123 更新时间:2023-11-28 06:36:26 25 4
gpt4 key购买 nike

我在使用 EditingDidBegin 事件触发器时遇到问题。我有 UITextFiled 我在编辑时触发了,所以我必须尝试显示 datePicker。它第一次能够触发事件时显示了 datePicker。选择 datePicker 后,我又尝试了一次尝试编辑 textField。它触发了那个事件。所以它显示键盘而不是 datePicker

最佳答案

这个怎么样:

在你的 View Controller 上实现 UITextFieldDelegate 协议(protocol):

class ViewController: UIViewController, UITextFieldDelegate { ...

确保 View Controller 连接为 Storyboard中 UITextField 的委托(delegate)。

然后,实现 textFieldShouldBeginEditing 函数:

func textFieldShouldBeginEditing(_ textField: UITextField) -> Bool {
print("show date picker")
return false
}

返回 false 意味着文本字段永远不会开始编辑,因此您可以改为显示日期选择器。

上面的代码将显示每次点击委托(delegate)给该 View Controller 的每个 UITextField 的日期选择器。如果你想要比这更好的控制,那么你需要连接一个引用 socket 并检查 textFieldShouldBeginEditing 以查看它是否是正确的文本字段。或者您可以使用标签(呃)。

关于ios - EditingDidBegin 事件不会在 swift 中第二次触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38975625/

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