textField和textView字數限制

2021-06-27 06:04:56 字數 1427 閱讀 5713

字數限制的問題點在於漢語可以無限漢語詞彙,導致字數限制對於漢字輸入就失去的作用,此方法來真正的解決漢語詞彙聯想帶來的問題

在字元的限制中可能會遇到兩種情況,

第一種是如何將乙個漢字相當於兩個字元的佔位空間,

第二種是當輸入法是中文時限制字元的判斷會出錯,因為textfield :shouldchangecharactersinrange:replacementstring這個方法只能捕獲鍵盤輸入的事件,而不能捕獲選擇字元的事件。

先上**怎麼解決我自己的問題的,這個textview,textfiled一樣使用。這是根據下邊的理論,發現不能解決問題想出的「奇招」,看到第一句**,我就想

- (bool)textview:(uitextview *)textview shouldchangetextinrange:(nsrange)range replacementtext:(nsstring *)text

if (textview.text.length>=40)

else

return yes; }

下邊兩個方案是參考方案,不一定有用,因為公司測試和領導特別苛刻,不能用,也許對你有用

第一種情況解決方案:

#pragma mark -- uitextfielfdelegate imp

- (bool)textfield:(uitextfield *)textfield shouldchangecharactersinrange:(nsrange)range replacementstring:(nsstring *)string

} else

}return yes;

}// 計算轉換後字元的個數

- (nsuinteger) lenghtwithstring:(nsstring *)string

第二種情況解決方案:

#definemaxnumberofdescriptionchars  50

- (void)dealloc

- (void)viewdidload

}// 有高亮選擇的字串,則暫不對文字進行統計和限制

else

}// 中文輸入法以外的直接對其統計限制即可,不考慮其他語種情況

else}}

//  這是個委託方法,在這裡可使用可不使用。使用這個方法就是當輸入的字元超過限制時就禁止輸入。 

- (bool)textview:(uitextview *)textview shouldchangetextinrange:(nsrange)range replacementtext:(nsstring *)text

}return yes;

}

TextField輸入長度和內容控制

1.限制輸入長度 ext.form.textfield 的 maxlength size 處理的並不是很好,設定了maxlength後還是可以任意輸入,國外extjs論壇看到有人的帖子,通過prototype重定義這兩個屬性,試了一下,很有效 ext.form.textfield.prototype...

限制textField長度

在 iphone 應用裡經常要限制使用者輸入字元的長度,比如密碼輸入框規定密碼長度是 x 到 y 位,下面這段 可以讓 uitextfield 限制輸入長度。bool textfield uitextfield textfield shouldchangecharactersinrange nsra...

textField的鍵盤監聽

監聽鍵盤的彈出事件 建立乙個nsnotificationcenter物件。nsnotificationcenter center nsnotificationcenter defaultcenter 監聽鍵盤的彈出通知 center addobserver self selector selecto...