TextFiled 控制键盘只可以输入数字(TextFiled only allow number input)

-(BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string {
    
    BOOL shouldInput = YES;
    
    NSNumberFormatter * nf = [[NSNumberFormatter alloc] init];
    [nf setNumberStyle:NSNumberFormatterDecimalStyle];
    
    NSString * newString = [NSString stringWithFormat:@"%@%@",textField.text,string];
    NSNumber * number = [nf numberFromString:newString];
    
    if (number)
        shouldInput = YES;
    else
        shouldInput = NO;

    if ([string isEqualToString:@"-"] || !string.length) {
        shouldInput = YES;
    }
    
     return shouldInput;
}

原文地址:https://www.cnblogs.com/shujucn/p/7481452.html