gpt4 book ai didi

ios - 退出 viewController 时停止调用 textFieldDidEndEditing

转载 作者:行者123 更新时间:2023-11-28 23:38:15 26 4
gpt4 key购买 nike

我有一个 ViewController,其中有一个用于用户输入的 TextField 和一个导航栏中的退出按钮。

通常,用户将文本输入到 textField 中,输入内容将在 textFieldDidEndEditing 中进行处理。如果在编辑开始之前点击“退出”按钮,则会正确地转到父 ViewController。

但是,如果在文本字段上开始编辑,然后点击“退出”按钮,则仍会调用 textFieldDidEndEditing,这是我不希望发生的情况。

我尝试使用textFieldDidEndEditing:reason:,但两种情况下返回的原因都是UITextFieldDidEndEditingReasonComfilled。似乎 UITextFieldDidEndEditingReasonCancelled 仅在 tvOS 中有效,在 iOS 中无效。

我还能如何检测用户已退出并阻止 textFieldDidEndEditing 运行直至完成?

最佳答案

您无法阻止 textFieldDidEndEditing 被调用。关闭 View Controller 将关闭文本字段。由于不再编辑文本字段,因此将调用委托(delegate)方法。

您可以选择在用户点击“退出”按钮时设置一个标志。然后在 textFieldDidEndEditing 的实现中,您可以检查它是否设置了该标志并采取相应行动。

关于ios - 退出 viewController 时停止调用 textFieldDidEndEditing,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54380130/

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