gpt4 book ai didi

ios - 将 TextView 辞去为第一响应者并在按返回时将文本字段设为第一响应者

转载 作者:行者123 更新时间:2023-11-28 13:23:22 25 4
gpt4 key购买 nike

我有一个带有 TextView 和文本字段的应用程序,用户可以在该 TextView 中输入问题并在字段中输入答案。我希望它在用户按下回车键时将 View 退出为第一响应者,并将该字段设为第一响应者,我尝试了下面的代码,但它似乎不起作用,我也不知道为什么

func textView(_ textView: UITextView, shouldChangeTextIn range: NSRange, replacementText text: String) -> Bool {
if text=="\n"{
questionTV.resignFirstResponder()
answerTF.becomeFirstResponder()
return false
}
return true
}

最佳答案

我试过下面的代码:

func textView(_ textView: UITextView, shouldChangeTextIn range: NSRange, replacementText text: String) -> Bool {
guard text == "\n" else { return true }

textView.resignFirstResponder()
textField.becomeFirstResponder()

return false
}

它按预期工作。

我想,原因可能在别的地方。您有更多详细信息要分享吗?

您是否设置了 TextView 的委托(delegate)?您是否在 shouldChangeTextIn 方法内的断点处停止?

更新:

在评论中很明显您遵守了错误的协议(protocol)。您需要符合 UITextViewDelegate 而不是 UITextFieldDelegate。如果您需要它来处理文本字段,您可能希望保持 UITextFieldDelegate 一致性。

关于ios - 将 TextView 辞去为第一响应者并在按返回时将文本字段设为第一响应者,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58761555/

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