UITextField 继承 UIControl 类,只支持单行输入和显示,可输入密码类型。支持实现代理 UITextFieldDelegate
名称 | 类型 | 说明 | 默认值 |
---|---|---|---|
text | NSString | 文本输入值 | |
textColor | UIColor | 文本颜色 | |
UIFont | UIFont | 文本大小 | |
textAlignment | NSTextAlignment | 文本方向 | NSLeftTextAlignment |
borderStyle | UITextBorderStyle | 边框风格 | UITextBorderStyleNone |
placeholder | NSString | 提示文本 | |
clearsOnBeginEditing | BOOL | 开始编辑时候清空内容 | NO |
adjustsFontSizeToFitWidth | BOOL | 以宽度自动调整字体大小 | NO |
background | UIImage | 背景 | |
clearButtonMode | UITextFieldViewMode | 设置何时显示清除按钮 | UITextFieldViewModeNever |
leftView | UIView | 左边视图 | |
rightView | UIView | 右边视图 | |
inputView | UIView | 响应输入时候显示的视图 | |
leftViewMode | UITextFieldViewMode | 设置何时显示左边视图模式 | UITextFieldViewModeNever |
rightViewMode | UITextFieldViewMode | 设置何时显示右边视图模式 | UITextFieldViewModeNever |
- (BOOL)endEditing:(BOOL)force;
是否强制取消当前输入行为##### 代理协议函数函数
- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField;
当开始编辑前,返回NO能够阻止编辑- (void)textFieldDidBeginEditing:(UITextField *)textField
当编辑输入结束触发(BOOL)textFieldShouldEndEditing:(UITextField *)textField
结束编辑前,返回NO能够阻止编辑结束(void)textFieldDidEndEditing:(UITextField *)textField
编辑结束- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string
当输入内容发生改变触发,range表示改变位置和长度。返回NO可阻止改变- (void)textFieldDidChangeSelection:(UITextField *)textField
输入内容发生改变后触发,IOS13支持。- (BOOL)textFieldShouldClear:(UITextField *)textField
当内容发生清除触发,返回NO阻止清除(BOOL)textFieldShouldReturn:(UITextField *)textField
当按下回车键触发,返回NO可阻止默认行为参考代码字体
UITextField* _textField = [[UITextField alloc] init]; // 设置位置 _textField.frame = CGRectMake(50, 100, 300, 60); // 设置圆角边框风格 _textField.borderStyle = UITextBorderStyleRoundedRect; // 设置值 _textField.text = @""; // 设置提示语 _textField.placeholder = @"请输入用户名"; // 设置键盘类型 _textField.keyboardType = UIKeyboardAppearanceDefault; // 设置代理 _textField.delegate = self; // 设置是否为密码类型 _textField.secureTextEntry = NO; UITextField* _passwdText = [[UITextField alloc] init]; _passwdText.frame = CGRectMake(50, 200, 300, 60); _passwdText.borderStyle = UITextBorderStyleRoundedRect; _passwdText.placeholder = @"请输入密码"; _passwdText.keyboardType = UIKeyboardAppearanceDefault; _passwdText.secureTextEntry = YES; [self.view addSubview:_textField]; [self.view addSubview:_passwdText];