美文网首页iOS
iOS- UITextField 输入框(控制输入小数点后两位)

iOS- UITextField 输入框(控制输入小数点后两位)

作者: Mr_Bob_ | 来源:发表于2016-07-18 17:30 被阅读603次
Untitled.gif
前言:

有很多做支付的时候,要求是输入控制在小数点后两位,如上图效果,我们只需要把对应的UITextField遵守代理,然后在代理方法中做下处理,具体代码入下:

- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string {
    
    
    NSMutableString *futureString = [NSMutableString stringWithString:textField.text];
    [futureString insertString:string atIndex:range.location];
    
    NSInteger flag = 0;
    // 这个可以自定义,保留到小数点后两位,后几位都可以
    const NSInteger limited = 2;
    
    for (NSInteger i = futureString.length - 1; i >= 0; i--) {
        
        if ([futureString characterAtIndex:i] == '.') {
            // 如果大于了限制的就提示
            if (flag > limited) {
                
                [SVProgressHUD showErrorWithStatus:@"输入金额请控制在小数点后两位" duration:2.0];
                return NO;
            }
            
            break;
        }
        
        flag++;
    }
    
    return YES;
}

相关文章

网友评论

    本文标题:iOS- UITextField 输入框(控制输入小数点后两位)

    本文链接:https://www.haomeiwen.com/subject/llapjttx.html