我想在用户打字时摆脱键盘的“返回”功能,所以没有新的行,所以我希望“返回”键的功能是“完成”,所以它会隐藏键盘.
我使用的是可编辑的UITextView,所以用户可以输入他们的帖子,并将其发布到主时间轴,但由于我有固定的单元格,我不希望用户能够按“返回”他们的职位将超出时间表的范围.
我发现这是使用UITextField,但不是与UITextView:
func textFieldShouldReturn(textField: UITextField!) -> Bool { textField.resignFirstResponder() //if desired return true }
所以我只想知道是否有办法在UITextView中执行此操作,或者至少能够在按下返回时隐藏键盘,而不是创建新行.
解决方法
您可以设置文本字段的返回键类型:
textField.returnKeyType = UIReturnKeyType.Done
更新
您可以使用相同的方法将返回键设置为“Done”,如上所述.但是,当用户点击返回键时,UITextView不提供回调.作为解决方法,您可以尝试处理textView(textView:UITextView,shouldChangeTextInRange范围:NSRange,replacementText text:String)委托调用,并在检测到新行字符的输入时关闭键盘:
func textView(textView: UITextView,shouldChangeTextInRange range: NSRange,replacementText text: String) -> Bool { if (text == "\n") { textView.resignFirstResponder() } return true }