在項目中使用文本輸入框出UITextField之外還會經常使用 UITextView ,難免會有需求監聽UITextView文本框內文本數量.下面介紹在swift3中兩種常用方式
方式一: 全局通知
1.注冊通知
在合適位置注冊監聽UITextView文本變化的全局通知
//UITextView 監聽開始輸入的兩種方法 //方法一:通知 NotificationCenter.default.addObserver(self, selector: #selector(ComposeVC.textViewChange), name: NSNotification.Name.UITextViewTextDidChange, object: nil)
2.實現監聽方法 此處方法名為 textViewChange
@objc fileprivate func textViewChange() { XWLog("textView文字改變 :\(composeTextView.text)") }
3.在控制器銷魂不忘銷魂通知
//移除通知 deinit { NotificationCenter.default.removeObserver(self) }
方式二: 代理
1.設置代理
//1.設置代理 composeTextView.delegate = self
2.遵守代理協議,實現代理方法
//MARK: - TEXTVIEW DELEGATE extension ComposeVC : UITextViewDelegate { func textViewDidChange(_ textView: UITextView) { if textView.text.lengthOfBytes(using: .utf8) > 0 { //文本框內有文字個數大於0 進行相應操作 }else{ //文本框內有文字個數等於0 進行相應操作 } } }
以上所述是小編給大家介紹的iOS開發中Swift3 監聽UITextView文字改變的方法(三種方法),希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對本站網站的支持!