有時候我們希望限制使用者的輸入,比如:
1.限制長度
2. 限制emoji表情符以防伺服器內部出錯~
3.金額輸入限制只能有乙個小數點,最多兩位小數,一開始輸入」.」轉化為」0.」等;
一般我們在textfield:shouldchangecharactersinrange:replacementstring:**方法裡限制,但如果多個頁面都有這種需求,重複**就多了~
這兩天寫了幾個textfield的擴充套件,來做這件事。
一開始也用的**封裝(用乙個自定義類做textfield的**,重寫textfield:shouldchangecharactersinrange:replacementstring:方法實現),但後來考慮到可能controller會做textfield的**並實現該方法,那麼textfield的**或者是自定義類,或者是contrller(看時機~),限制輸入的**和controller的****不會都執行,這是個問題~
後來參考了下github,採用給textfield新增觀察者的方法解決了了。
若需要,請戳這裡:uitextfield-inputlimit
UITextField限制輸入長度
因leader要求輸入長度做限制,而且要求乙個漢字算2個字元,其他的算1個字元,再加上乙個controller有多個uitextfiled,所以我這麼寫控制長度。也許會有更好的方法 m檔案 import viewcontroller.h inte ce viewcontroller end impl...
UITextField限制輸入長度
textfield限制輸入字元,常見使用 實現大概是這個樣子 bool textfield uitextfield textfield shouldchangecharactersinrange nsrange range replacementstring nsstring string retu...
限制UITextField輸入長度
如果要限制uitextfield輸入長度最長不超過kmaxlength,那麼需要實現做以下操作 1 實現uitextfielddelegate協議 2 實現textfield shouldchangecharactersinrange replacementstring 方法 bool textfi...