2013-04-09 56 views
0

我有一個UITextView,我限制用戶輸入超過150個字符。我通過執行下面的方法來實現。現在,當用戶複製超過150個字符並將其粘貼到此文本視圖中時,由於此方法驗證,粘貼操作不被允許。在超過150個字符的粘貼操作中,我想先取出150個字符並將其粘貼到UITextView中。我怎樣才能做到這一點?以有限字符形式粘貼UITextView行動

- (BOOL)textView:(UITextView *)iTextView shouldChangeTextInRange:(NSRange)iRange replacementText:(NSString *)iText 
+0

顯示您到目前爲止的實際情況。 – rmaddy 2013-04-09 17:30:23

回答

5
- (BOOL)textView:(UITextView *)iTextView shouldChangeTextInRange:(NSRange)iRange replacementText:(NSString *)iText { 
    if (iText.length < 150) { 
     return YES; 
    } 
    iTextView.text = [iText substringToIndex:150]; 
    return NO; 
} 

總之,檢查是否輸入被超過界限,並採取第一150個字符,通過取該輸入串的子串。手動將其插入文本視圖並返回NO

+0

'iText.length <150'不正確。你需要計算textView和range的長度。使用'iTextView.text.length +(iText.length - iRange.length)'。 – 2017-11-22 22:45:21

相關問題