zoukankan      html  css  js  c++  java
  • ios textfield如何设置,只能输入1.0-9.9内的数字,并实现时时监测效果

    //byzqk
    - (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string { /* * 不能输入.1-9以外的字符。 * 设置输入框输入的内容格式 * 只能有一个小数点 * 小数点后最多能输入一位 * 如果第一位是.则前面加上1. */ // 判断是否有小数点 if ([textField.text containsString:@"."]) { self.isHaveDian = YES; }else{ self.isHaveDian = NO; } if (string.length > 0) { //当前输入的字符 unichar single = [string characterAtIndex:0]; // 不能输入.0-9以外的字符 if (!((single >= '0' && single <= '9') || single == '.')) { // [SDIndicator showInfoWithMessage:@"您的输入折扣不正确"]; return NO; } // 只能有一个小数点 if (self.isHaveDian && single == '.') { // [SDIndicator showInfoWithMessage:@"最多一个小数点"]; return NO; } // 如果第一位是.则前面加上1. if ((textField.text.length == 0) && (single == '.')) { textField.text = @"1"; } // 如果第一位是.则前面加上1. if ((textField.text.length == 0) && (single == '0')) { // [SDIndicator showInfoWithMessage:@"折扣必须大于1"]; return NO; } // 小数点后最多能输入1位 if (self.isHaveDian) { NSRange ran = [textField.text rangeOfString:@"."]; if (range.location > ran.location) { if ([textField.text pathExtension].length > 0) { // [SDIndicator showInfoWithMessage:@"小数点后最多有一位小数"]; return NO; } } }else{ if (single != '.'&&textField.text.length > 0) { return NO; } } } return YES; }
  • 相关阅读:
    Python常用函数
    Mock测试&Postman mockserver详细教程
    openpyxl模块
    adb 'grep' 不是内部或外部命令,也不是可运行的程序或批处理文件
    Appium-Python-Windows环境搭建笔记
    调用类方法时报错:missing 1 required positional argument: 'self'
    RE正则表达式-元字符
    微分方程
    操作系统学习记录
    Mybatis基础配置
  • 原文地址:https://www.cnblogs.com/widgetbox/p/9558277.html
Copyright © 2011-2022 走看看