在 ChangeTextWave 上更改 WriterType

Change UIReturnKeyType on UITextView change

当用户在我的 UITextView 中输入字符串时,我正在尝试将 return 键从 default 更改为 done。我试图在 textViewDidChange(_ textView: UITextView) 中执行此操作,但只有在我点击另一个 UITextView(具有不同的 return 键类型)并返回到原文查看。它不会在输入字符串后立即发生。

func textViewDidChange(_ textView: UITextView) {
    myTextView.returnKeyType = myTextView.text.isEmpty ? .default : .done
}

我做错了什么?

试试这个

func textViewDidChange(_ textView: UITextView) {

   textView.returnKeyType = ert..text.isEmpty ? .default : .done

   textView.resignFirstResponder()

   textView.becomeFirstResponder()
}

键盘打开后无法更新。 您可以通过同时关闭和打开来更新它。所以把这个放在底部

self.view.endEditing(true)
textView.becomeFirstResponder()

我通过设置myTextView.enablesReturnKeyAutomatically = true解决了。它使 'Done' 按钮变灰,并在用户开始输入时将其变为蓝色!