美文网首页
iOS 开发-UITextField(第一种输入框)的使用

iOS 开发-UITextField(第一种输入框)的使用

作者: 戏子吕戏西施 | 来源:发表于2020-12-28 09:00 被阅读0次

    UITextField的基本使用

    1. 创建UITextField

        UITextField *textField = [[UITextField alloc] initWithFrame:(CGRectMake(0, 224, SCREEN_Width, 40))];  初始化

    2. UITextField    属性

        文本框文本内容(显示的内容)    

        textField.text = @"请输入";    

        textField.delegate = self;    签订代理为self

        textField.placeholder = @"请输入";    设置缺省时显示的灰度字符串(text属性没有值的时候显示的占位字符串)

        attributedText(NSAttributedString)    可以通过富文本来进行创建和获取文本内容

        attributedPlaceholder(NSAttributedString)    通过AttributedString设置缺省字符串

        textField.textColor = [UIColor greenColor];    设置文本内容字体颜色

        textField.textAlignment = NSTextAlignmentCenter;    设置文本内容居中(NSTextAlignmentLeft 居左, NSTextAlignmentRight 居右)

        textField.font = [UIFont systemFontOfSize:12];    设置文本内容字体大小

        textField.borderStyle = UITextBorderStyleNone;

        UITextBorderStyle 枚举类型

            UITextBorderStyleNone    没有热河边框

            UITextBorderStyleLine    线性边框

            UITextBorderStyleBezel    阴影效果边框

            UITextBorderStyleRoundedRect    原型效果边框

        clearsOnBeginEditing(BOOL)    (设置是否在开始编辑时清空输入框内容)

        adjustsFontSizeToFitWidth(BOOL)    设置字体大小是否跟随宽度自适应(默认为NO)

        minimumFontSize(CGFloat)    设置最小字体大小

        background(UIImage)    设置背景图片 (会被拉伸)

        disabledBackground(UIImage) 设置禁用时的背景图片

        editing (BOOL)    是否正在编辑(只读属性)

        allowsEditingTextAttributes(BOOL)    是否允许更改字符属性字典

        typingAttributes(NSDictionary)    设置属性字典

        clearButtonMode(UITextFieldViewMode)    设置清除按钮的显示模式

            UITextFieldViewMode    枚举类型

                UITextFieldViewModeNever    从不显示

                UITextFieldViewModeWhileEditing    编辑的时候显示

                UITextFieldViewModeUnlessEditing    非编辑的时候显示

                UITextFieldViewModeAlways    任何时候都显示

        leftView(UIView)    设置输入框左边的view

        rightView(UIView)    设置输入框右边的view

        rightViewMode(UITextFieldViewMode)    设置输入框右视图的显示模式

        inputView or inputAccessoryView (UIView)    设置输入框成为第一响应时弹出的视图和辅助视图(类似键盘)

        clearsOnInsertion(BOOL)    这个属性设置是否允许再次编辑时在内容中间插入内容    

        UIKeyboardType keyboardType枚举类型键盘类型

            UIKeyboardTypeDefault     默认键盘:支持所有字符

            UIKeyboardTypeASCIICapable    支持ASCII的默认键盘

            UIKeyboardTypeNumbersAndPunctuation    标准电话键盘,支持+*#等符号

            UIKeyboardTypeURL    URL键盘,有.com按钮;只支持URL字符

            UIKeyboardTypeNumberPad    数字键盘

            UIKeyboardTypePhonePad    电话键盘

            UIKeyboardTypeNamePhonePad    电话键盘,也支持输入人名字

            UIKeyboardTypeEmailAddress    用于输入电子邮件地址的键盘 

        [self.viewaddSubview:textField];    添加显示输入框

    3. UITextField代理(UITextFieldDelegate)方法已经键盘响应与注销方法

        [textField resignFirstResponder];    设置textfield为第一响应这(回收键盘)

        [textField becomeFirstResponder];    是否需要进入页面就输入框就处于开始编辑状态

        - (BOOL)endEditing:(BOOL)force;    注销第一响应(収键盘)

        - (BOOL)textFieldShouldBeginEditing:(UITextField *)textField;    点击输入框时触发的方法,返回YES则可以进入编辑状态,NO则不能。

        - (BOOL)textFieldShouldEndEditing:(UITextField *)textField;    将要结束编辑时调用的方法,返回YES则可以结束编辑状态,NO则不能

        - (void)textFieldDidBeginEditing:(UITextField *)textField;    开始编辑时调用的方法

        - (void)textFieldDidEndEditing:(UITextField *)textField;    结束编辑调用的方法

        - (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string;    当输入框内字符发生变化时时调用的方法

        - (BOOL)textFieldShouldClear:(UITextField *)textField;    点击清除按钮时调用的函数,返回YES则可以清除,返回NO则不能清除

        - (BOOL)textFieldShouldReturn:(UITextField *)textField;    点击键盘上的return触发的方法

    4. 拓展UITextField限制字数

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

            NSIntegermaxLength = 6;//设置限制字数

            if(textField.tag ==100) {

                NSString* toBeString = [textField.text stringByReplacingCharactersInRange:range withString:string];

                if (toBeString.length > maxLength && range.length! = 1){

                    textField.text = [toBeString substringToIndex:maxLength];

                    returnNO;

                }}returnYES;}

    5. 回收键盘点击空白self.view

        -(void)touchesBegan:(NSSet *)toucheswithEvent:(UIEvent*)event{

            [self.textField resignFirstResponder];

        }

    此上就是UITextField在使用中的常用属性以及使用方法, 如有不足或者错误, 欢迎大家前来纠正, 谢谢

    相关文章

      网友评论

          本文标题:iOS 开发-UITextField(第一种输入框)的使用

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