본문 바로가기
iOS

숫자만 입력 받기

by 냥이있는삶 2020. 5. 18.
반응형
#pragma mark -
#pragma mark 숫자만 입력받도록 처리(숫자입력시에만 yes 리턴)
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string { 


    NSNumberFormatter *numberFormatter = [[NSNumberFormatter alloc] init]; 
    [numberFormatter setNumberStyle:NSNumberFormatterDecimalStyle];
    NSNumber* candidateNumber; 
    NSString* candidateString = [textField.text stringByReplacingCharactersInRange:range withString:string]; 
    range = NSMakeRange(0, [candidateString length]); 
    [numberFormatter getObjectValue:&candidateNumber forString:candidateString range:&range error:nil];
    if (([candidateString length] > 0) && (candidateNumber == nil || range.length < [candidateString length])) { 
        return NO; 
    }

    int maxLength = 4; 
    if ([candidateString length] > maxLength) { 
        return NO; 
    }

    return YES; 
}
반응형

'iOS' 카테고리의 다른 글

화면 캡처 후 공유하기  (0) 2020.05.18
UITextField 한글 글자수 제한 하기  (0) 2020.05.18
objective-c 이메일 주소 검증하기  (0) 2020.05.18
NSMutableDictionary를 json으로 변환  (0) 2020.05.18
iOS iP주소 가져오기  (0) 2019.05.30