在項目中使用文本輸入框出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 DELEGATEextension ComposeVC : UITextViewDelegate {func textViewDidChange(_ textView: UITextView) {if textView.text.lengthOfBytes(using: .utf8) > 0 {//文本框內有文字個數大于0 進行相應操作}else{//文本框內有文字個數等于0 進行相應操作}}}
以上所述是小編給大家介紹的iOS開發中Swift3 監聽UITextView文字改變的方法(三種方法),希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對武林網網站的支持!
新聞熱點
疑難解答