zoukankan      html  css  js  c++  java
  • uitextfield输入字符限制

    -(UITextField*)createField:(NSString*)placeholder andTag:(int)tag andFont:(double)font{
        
        UITextField * field =[[UITextField alloc]init];
        field.frame = CGRectMake(0, 0, Main_Width-91, 50);
        field.delegate = self;
        field.userInteractionEnabled = YES;
        field.textAlignment = NSTextAlignmentLeft;
        field.keyboardType = UIKeyboardTypeDefault;
    //    field.returnKeyType = UIReturnKeySend;
        field.tag = tag;
        field.placeholder =placeholder;
    //    field.text = placeholder;
        field.textColor = littleBlackColor;
        [field setFont:[UIFont fontWithName:@"STHeitiSC" size:font]];
        [field addTarget:self action:@selector(textFieldWithText:) forControlEvents:UIControlEventEditingChanged];
        return field;
    }
    -(void)textFieldWithText:(UITextField *)textField{
    
        UITextField * field = (UITextField*)textField;
        switch (textField.tag) {
            case 500://发车单位/收车单位
                if ([self textField:field shouldChangeCharactersInRange:NSMakeRange(0, 0) replacementString:@""]) {
                    [dic setObject:field.text forKey:@"unitname"]; //送达单位、收车单位
                }
                break;
            case 501: //联系人
                if ([self textField:field shouldChangeCharactersInRange:NSMakeRange(0, 0) replacementString:@""]) {
                    [dic setObject:field.text forKey:@"contact"];
                }
                break;
            case 502://联系电话
                if ([self textField:field shouldChangeCharactersInRange:NSMakeRange(0, 0) replacementString:@""]) {
                    [dic setObject:field.text forKey:@"phone"];
                }
                break;
            case 503://详细地址
                if ([self textField:field shouldChangeCharactersInRange:NSMakeRange(0, 0) replacementString:@""]) {
                    [dic setObject:field.text forKey:@"address"];
                }
                break;
            default:
                break;
        }
    }
    - (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string;
    {  
    //string就是此时输入的那个字符textField就是此时正在输入的那个输入框返回YES就是可以改变输入框的值NO相反
        if ([string isEqualToString:@"
    "])  //按会车可以改变
        {
            return YES;
        }
        NSString * toBeString = [textField.text stringByReplacingCharactersInRange:range withString:string]; //得到输入框的内容
        switch (textField.tag) {
            case 500://发车单位/收车单位
                if ([toBeString length] > 20) {
                    textField.text = [toBeString substringToIndex:20];
                    [self createUIAlertController:@"单位输入不能超过20个字符"];
                    return NO;
                }
                break;
            case 501: //联系人
                if ([toBeString length] > 10) {
                    textField.text = [toBeString substringToIndex:10];
                    [self createUIAlertController:@"联系人输入不能超过10个字符"];
                    return NO;
                }
                break;
            case 502://联系电话
                if ([toBeString length] > 11) {
                    textField.text = [toBeString substringToIndex:11];
                    [self createUIAlertController:@"联系电话输入不能超过11个字符"];
                    return NO;
                }
                break;
            case 503://详细地址
                if ([toBeString length] > 30) {
                    textField.text = [toBeString substringToIndex:30];
                    [self createUIAlertController:@"详细地址输入不能超过30个字符"];
                    return NO;
                }
                break;
            default:
                break;
        }
    
        return YES;
    }











  • 相关阅读:
    机器学习系列(4) 线性回归
    MYSQL系列(5) 电商常用指标查询
    MYSQL系列(4) 关于时间函数的一些写法
    快速排序
    选择排序
    希尔排序
    直接插入排序
    冒泡排序
    Java修饰符大汇总
    字符串实现大数的相加
  • 原文地址:https://www.cnblogs.com/sayimba/p/5692980.html
Copyright © 2011-2022 走看看