網上有許多限制textField輸出長度辦法,然則我認為都不是很完善,精確來講可以說是不相符現實開辟的請求,是以在這裡整頓一下textField限制輸出長度的辦法.
我所采取的其實不是監聽辦法而是最分歧的署理完成辦法,為何不應用監聽呢???
當你看到這篇文章很有能夠視是為一件事所憂?那就是應用監聽限制輸出長度後不克不及夠完善的掌握輸出內容.
舉一個簡略的例子:
你要限制輸出長度為30個字符,當你輸出30個字符後監聽切實其實可以很好的掌握不讓你持續輸出,然則成績也隨之而來,當你把光標挪動到輸出內容中央的地位後,你是可以持續輸出的這類輸出讓人很憂?由於當你輸出後你的光標會挪動到最初,而且限制你持續輸出,然則你方才輸出的內榮卻保存在了文本中央,這很不相符請求.
是以在這裡采取署理可以很好的完成我們想要的後果,僅僅幾行代碼願望給你帶來贊助.
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string { if (textField == self.liveThemeTextField) { //這裡的if時刻為了獲得刪除操作,假如沒有次if會形成當到達字數限制後刪除鍵也不克不及應用的效果. if (range.length == 1 && string.length == 0) { return YES; } //so easy else if (self.liveThemeTextField.text.length >= 30) { self.liveThemeTextField.text = [textField.text substringToIndex:30]; return NO; } } return YES; }
以上就是本文的全體內容,願望對年夜家的進修有所贊助,也願望年夜家多多支撐本站。
【僅幾行iOS代碼限制TextField輸出長度】的相關資料介紹到這裡,希望對您有所幫助! 提示:不會對讀者因本文所帶來的任何損失負責。如果您支持就請把本站添加至收藏夾哦!