iOS textView限制輸入字符數(shù)

實(shí)現(xiàn)代理
然后實(shí)現(xiàn)下面方法:

func textViewDidChange(_ textView: UITextView) {
        if textView.text.characters.count > 0 {
            placeHolderLabel.alpha = 0
        } else {
            placeHolderLabel.alpha = 1
        }
        
        // 限制140個(gè)字符
        let TOTAL_NUM = 140
        if textView.text.characters.count > TOTAL_NUM {
            
            //獲得已輸出字?jǐn)?shù)與正輸入字母數(shù)
            let selectRange = textView.markedTextRange
            
            //獲取高亮部分 - 如果有聯(lián)想詞則解包成功
            if let selectRange = selectRange {
                let position =  textView.position(from: (selectRange.start), offset: 0)
                if (position != nil) {
                    return
                }
            }
            
            let textContent = textView.text
            let textNum = textContent?.characters.count
            
            //截取字符
            if textNum! > TOTAL_NUM {
                let index = textContent?.index((textContent?.startIndex)!, offsetBy: TOTAL_NUM)
                let str = textContent?.substring(to: index!)
                textView.text = str
            }
        }
        
    }
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 134,991評(píng)論 19 139
  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 173,556評(píng)論 25 708
  • 在開發(fā)中我們經(jīng)常遇到這樣的需求:在UITextField或者UITextView中限制用戶可以輸入的最大字符數(shù)。如...
    西木柚子閱讀 2,602評(píng)論 5 32
  • *面試心聲:其實(shí)這些題本人都沒怎么背,但是在上海 兩周半 面了大約10家 收到差不多3個(gè)offer,總結(jié)起來就是把...
    Dove_iOS閱讀 27,217評(píng)論 30 472
  • 一口氣的時(shí)間是多長 是能感到熱卻留不住的時(shí)間 一只影的高度是多高 是能超越它卻觸不到的高度 一堵墻的距離是多遠(yuǎn) 是...
    沙嫣一顧閱讀 83評(píng)論 0 0