当前位置:  开发笔记 > IOS > 正文

UITextView becomeFirstResponder()添加新行

如何解决《UITextViewbecomeFirstResponder()添加新行》经验,为你挑选了1个好方法。

我是iOS/Swift的新手,在设置UITextView第一响应者时(next从上一次触摸时)我有一种奇怪的行为UITextField.它会自动在中插入一个新行UITextView.代码:

class MyViewController: UIViewController, UITextFieldDelegate, UITextViewDelegate {
  @IBOutlet weak var nameTextField: UITextField!
  @IBOutlet weak var descriptionTextView: UITextView!

  override func viewDidLoad() {
    nameTextField.delegate = self
    descriptionTextView.delegate = self
  }

  func textFieldShouldReturn(nameTextField: UITextField) -> Bool {
    nameTextField.resignFirstResponder()
    descriptionTextView.becomeFirstResponder()
    return true
  }

  func textView(descriptionTextView: UITextView, shouldChangeTextInRange range: NSRange, replacementText text: String) -> Bool {
    if (text == "\n") {
      descriptionTextView.resignFirstResponder()
      return false
    }
    return true
  }
}

总是添加一个新行next,即使已有文本或新行,我也会按.第一个是next这里发生的事情(光标自动在第二行). 在此输入图像描述

如果我返回文本字段并再次按下,则光标位于第3行). 在此输入图像描述



1> Leo..:

返回false textFieldShouldReturn

func textFieldShouldReturn(nameTextField: UITextField) -> Bool {
    nameTextField.resignFirstResponder()
    descriptionTextView.becomeFirstResponder()
    return false
}

更多细节在这里

推荐阅读
拾味湖
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有