今天產品要求支付的時候輸入不能輸入小數點而且要求必須小於100,很簡單直接貼代碼:string
#pragma mark - 輸入限制產品
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string {it
NSMutableString * futureString = [NSMutableString stringWithString:textField.text];io
[futureString insertString:string atIndex:range.location];table
for (int i = (int)futureString.length-1; i>=0; i--) {date
if ([futureString characterAtIndex:i] == '.') {支付
return NO;tab
break;while
}數字
}
return [self validateNumber:string];
}
#pragma mark - 只能輸入數字
- (BOOL)validateNumber:(NSString *)number {
self.moneyTextField.font = [UIFont systemFontOfSize:17];
BOOL res = YES;
NSCharacterSet* tmpSet = [NSCharacterSet characterSetWithCharactersInString:@"0123456789"];
int i = 0;
while (i < number.length) {
NSString * string = [number substringWithRange:NSMakeRange(i, 1)];
NSRange range = [string rangeOfCharacterFromSet:tmpSet];
if (range.length == 0) {
res = NO;
break;
}
i++;
}
if (_moneyTextField.text.length==0)
{
if ([number intValue]==0)
{
res = NO;
}
}
else
{
res = YES;
}
return res;
}