gpt4 book ai didi

ios - 每次按下返回键时,使 UITextField 清除内容

转载 作者:行者123 更新时间:2023-11-28 07:42:34 25 4
gpt4 key购买 nike

我通过制作一个时间表应用程序来学习 Swift,该应用程序只是创建随机时间表并要求用户在 UITextField 中键入答案。

我希望用户能够点击返回键并让文本字段清除他们之前的答案并让键盘保持可见。我已经设置了我想要的其他行为,只是我似乎找不到任何类似的问题来弄清楚如何清除,并在点击返回键时执行所有这些操作。

这是我目前的代码,它在关闭键盘时有效,但不会清除该字段。

非常感谢!

@IBAction func answerTyped(_ sender: UITextField) {

/* Clear the text field*/

questionNumber += 1
attempted += 1
markQuestion(answer: answer)
newQuestion(awardLevel: currentLevel, questionNumber: questionNumber)
}

最佳答案

如果您希望在点击return 按钮时清除textField,您可以使用textFieldShouldReturn 委托(delegate)。

func textFieldShouldReturn(_ textField: UITextField) -> Bool {   //delegate method
textField.text = "" // Clears text
//Do other things that you want to do when user taps return button
return true
}

请注意,这不会像您询问的那样关闭 textField,通常用户习惯于使用 return 关闭他们的 textField。所以如果你问我这是不好的用户体验。而且你需要有一种机制让用户在需要时关闭键盘,比如在外面敲击以关闭键盘等等。所以我希望你已经解决了这个问题。

您的 viewController 应该已经为这个方法工作实现了 UITextFieldDelegate

class YourViewController: UITextFieldDelegate {
var textField: UITextField! //Using IBOutlet or whatever

func viewDidLoad() {
super.viewDidLoad()

textField.delegate = self
}
}

关于ios - 每次按下返回键时,使 UITextField 清除内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51862956/

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