-(BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string { if (textField.text.length > 10) { return range.location < 11; }else{ BOOL isHaveDian = YES; if ([textField.text rangeOfString:@"."].location==NSNotFound) { isHaveDian=NO; } if ([string length]>0) { unichar single=[string characterAtIndex:0];//当前输入的字符 if ((single >='0' && single<='9') || single=='.')//数据格式正确 { //首字母不能为小数点 if([textField.text length]==0){ if(single == '.'){ [textField.text stringByReplacingCharactersInRange:range withString:@""]; return NO; } } if([textField.text length]==1 && [textField.text isEqualToString:@"0"]){ if(single != '.'){ [textField.text stringByReplacingCharactersInRange:range withString:@""]; return NO; } } if (single=='.') { if(!isHaveDian)//text中还没有小数点 { isHaveDian=YES; return YES; }else { [textField.text stringByReplacingCharactersInRange:range withString:@""]; return NO; } } else { if (isHaveDian)//存在小数点 { //判断小数点的位数 NSRange ran=[textField.text rangeOfString:@"."]; NSInteger tt=range.location-ran.location; if (tt <= 2){//2表示小数点后能输入两位,4就是能输入4位 return YES; }else{ return NO; } } else { return YES; } } }else{//输入的数据格式不正确 [textField.text stringByReplacingCharactersInRange:range withString:@""]; return NO; } } else { return YES; } } }
参考:https://www.cnblogs.com/fcug/p/5500349.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现