打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
field输入小数点后两位

这个作用需要在下面的方法中进行判断

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


============代码片段如下==========

//textField只能输入@"0123456789.",且只能输入到小数点后两位,第一位不能是小数点

-(BOOL)isValidateCharacter:(NSString*)string andTextField:(UITextField*)textField

{

    //用来标示字符串中是否存在小数点

    BOOL exitPoint=NO;

    BOOL res=YES;

    //合法的字符集合

    NSCharacterSet*tmpSet=[NSCharacterSet characterSetWithCharactersInString:@"0123456789."];

    int i=0;

    while (i<string.length) {

        //首先判断是否有不合法的字符

        NSString*subString=[string substringWithRange:NSMakeRange(i, 1)];

        NSRange range=[subString rangeOfCharacterFromSet:tmpSet];

        if (range.length==0) {

            res= NO; //说明subString是不合法的字符

            break;

        }

        //第一个字符不能是小数点

        if ((textField.text.length==0)&&([subString isEqualToString:@"."])) {

            res=NO;

            break;

        }

        //只能有一个小数点

        if ([subString isEqualToString:@"."]) {

            exitPoint=YES;

            NSString*str=textField.text;

            NSRange strRange=[str rangeOfString:@"."];

            if (strRange.length>0) {

                res=NO;//textfield已经存在小数点,而且即将输入的也是小数点

                break;

            }

        }

        //小数点后两位

        NSRange rangePoint=[textField.text rangeOfString:@"."];

        if (rangePoint.length>0) {

            NSString*point=[[textField.text componentsSeparatedByString:@"."] lastObject];

            if (point.length>=2) {

                res=NO;

                break;

            }

        }

        i++;

    }

    return res;

}



本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
[OC]拾遗补阙
UITextField的总结
实现对UITextField,UITextView等输入框的字数限制
NSString&NSMutableString常用操作梳理
iOS文本输入过滤 emoji 表情符号
Foundation Kit快速教程
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服