保留 return 键的功能但禁用 "\n" IOS
Keep functionality of return key but disable "\n" IOS
更新:Return 关键问题
我正在使用 TextView 中的 return 键发送消息。
然而,当我按下 return 键(我将其更改为 "Send")时,“\n”功能仍处于启用状态。如何在不破坏 "Send".
功能的情况下禁用换行符功能
func textView(_ textView: UITextView, shouldChangeTextIn range: NSRange, replacementText text: String) -> Bool {
if (text == "\n") {
if(message.text != ""){
message.text = nil
doSomething()
}
}
return true
}
尝试切换自动启用 return 键仍然无法解决我的问题。
我需要以相同的方式访问 doSomething(),但在我清除消息后没有“\n”影响我的 textView。
问题是您要返回 true
。这意味着 "go ahead and enter the return character that the user typed"。但这正是您所说的 而不是 想做的。 Return false
代替(对于 text == "\n"
的情况)。
在
之后调用cursorPosition()函数
message.text = nil
message.text = ""
并添加以下函数
func cursorPosition() {
let startPosition = textView.beginningOfDocument
textView.selectedTextRange = textView.textRange(from: startPosition, to: startPosition)
}
更新:Return 关键问题
我正在使用 TextView 中的 return 键发送消息。
然而,当我按下 return 键(我将其更改为 "Send")时,“\n”功能仍处于启用状态。如何在不破坏 "Send".
功能的情况下禁用换行符功能func textView(_ textView: UITextView, shouldChangeTextIn range: NSRange, replacementText text: String) -> Bool {
if (text == "\n") {
if(message.text != ""){
message.text = nil
doSomething()
}
}
return true
}
尝试切换自动启用 return 键仍然无法解决我的问题。
我需要以相同的方式访问 doSomething(),但在我清除消息后没有“\n”影响我的 textView。
问题是您要返回 true
。这意味着 "go ahead and enter the return character that the user typed"。但这正是您所说的 而不是 想做的。 Return false
代替(对于 text == "\n"
的情况)。
在
之后调用cursorPosition()函数message.text = nil
message.text = ""
并添加以下函数
func cursorPosition() {
let startPosition = textView.beginningOfDocument
textView.selectedTextRange = textView.textRange(from: startPosition, to: startPosition)
}