UITextView数据更改为swift
你怎么能用Swift
检测UITextView
的数据变化? 以下代码不会执行任何检测。
我正在声明UITextView
:
@IBOutlet weak var bodyText: UITextView! optional func textViewDidChange(_ textView: UITextView!) { println(bodyText.text) }
感谢Scott
你需要设置UITextView 委托,并在其中实现textViewDidChange:方法。 不幸的是,我不知道在线是否有迅速的文档。 所有链接都转到了Objective-C文档。
代码将如下所示
class ViewController: UIViewController, UITextViewDelegate { //If your class is not conforms to the UITextViewDelegate protocol you will not be able to set it as delegate to UITextView @IBOutlet weak var bodyText: UITextView! override func viewDidLoad() { super.viewDidLoad() bodyText.delegate = self //Without setting the delegate you won't be able to track UITextView events } func textViewDidChange(textView: UITextView) { //Handle the text changes here print(textView.text); //the textView parameter is the textView where text was changed } }
设置UITextView
代理。请参阅UITextViewDelegate
把它viewDidLoad
bodyText!.delegate = self