textField限制只能輸入一定長度的字符

jopen 9年前發布 | 822 次閱讀 Objective-C IOS

- (BOOL)textField:(UITextField )textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString )string; 
{  //string就是此時輸入的那個字符textField就是此時正在輸入的那個輸入框返回YES就是可以改變輸入框的值NO相反

if ([string isEqualToString:@"\n"]) //按會車可以改變 { return YES; }

NSString * toBeString = [textField.text stringByReplacingCharactersInRange:range withString:string]; //得到輸入框的內容

if (self.myTextField == textField)  //判斷是否時我們想要限定的那個輸入框
{ 
    if ([toBeString length] > 20) { //如果輸入框內容大于20則彈出警告
        textField.text = [toBeString substringToIndex:20]; 
        UIAlertView *alert = [[[UIAlertView alloc] initWithTitle:nil message:@"超過最大字數不能輸入了" delegate:nil cancelButtonTitle:@"Ok" otherButtonTitles:nil, nil] autorelease]; 
        [alert show]; 
        return NO; 
    } 
} 
return YES; 

}</pre>

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!