Friday, 8 November 2013

Validate length and restrict textfield to Numeric, alphanumeric, and alpha characters only

#define ALPHA @"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
#define NUMERIC @"1234567890"
#define ALPHA_NUMERIC ALPHA NUMERIC
#define MAX_LENGTH 25


- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string {

    if(textField== textfieldname)
    {           
        NSUInteger newLength = [textField.text length] + [string length] - range.length;
        
        NSCharacterSet *unacceptedInput =
        [[NSCharacterSet characterSetWithCharactersInString:ALPHA_NUMERIC] invertedSet];

        if ([[string componentsSeparatedByCharactersInSet:unacceptedInput] count] > 1)
            return NO;
        else
            return YES&&(newLength < MAX_LENGTH);
        return YES;
    }else{
        return NO;
    }
}

No comments:

Post a Comment