Validation for textfield is not working
- by MaheshBabu
Hi folks,
I am using 4 Textfields in my application.
I need to validate those textfields like,These 4 textfields Allow only o,1,....9 and .
For that i use the code like this.
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string {
static NSCharacterSet *charSet = nil;
if(!charSet) {
charSet = [[[NSCharacterSet characterSetWithCharactersInString:@"0123456789."] invertedSet] retain];
}
NSRange location = [string rangeOfCharacterFromSet:charSet];
return (location.location == NSNotFound);
And first textfield allows digits 10,second third and fourth textfields allows less than
100.
For that my code is
if (textField.tag == 1) {
NSString *newString = [textField.text stringByReplacingCharactersInRange:range withString:string];
double homevaluedouble = [newString doubleValue];
return !(homevaluedouble > 10000000000);
}
if (textField.tag == 2) {
NSString *newString = [textField.text stringByReplacingCharactersInRange:range withString:string];
double validate = [newString doubleValue];
return !(validate > 100);
}
if (textField.tag == 3) {
NSString *newString = [textField.text stringByReplacingCharactersInRange:range withString:string];
double validate = [newString doubleValue];
return !(validate > 100);
}
I write this code in
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string {
But textfields allows 0,1,..9 and . but digit limit is not working,
if i remove 0,1,...9 then limit to textfield working.
i am getting confuse with it.
can any one pls help me,How can i resolve it.
Thank u in advance.