保留返回键的功能但禁用" \ n" IOS

时间:2018-03-12 00:48:35

标签: ios swift uitextview

更新:返回主要问题

我正在使用TextView中的返回键发送消息。

然而,当我按下返回键(我更改为"发送")时," \ n"功能仍然启用。如何在不破坏"发送"。

的功能的情况下禁用换行功能
func textView(_ textView: UITextView, shouldChangeTextIn  range: NSRange, replacementText text: String) -> Bool {
        if (text == "\n") {

                if(message.text != ""){
                message.text = nil
                doSomething()
            }

        }
        return true
    }

尝试切换自动启用返回键仍然无法解决我的问题。

我需要以相同的方式访问 doSomething()但没有" \ n"清除消息后影响我的textView。

2 个答案:

答案 0 :(得分:1)

问题是你要归还true。这意味着“继续并输入用户键入的返回字符”。但这正是你所说的想做的事情。请改为false(对于text == "\n")。

答案 1 :(得分:0)

之后调用cursorPosition()函数
message.text = nil 
message.text = ""

并添加以下功能

 func cursorPosition() {
    let startPosition = textView.beginningOfDocument
    textView.selectedTextRange = textView.textRange(from: startPosition, to: startPosition)
}