基本属性
UITextField *text = [[UITextField alloc]initWithFrame:frame];
(1) //设置边框样式,只有设置了才会显示边框样式
text.borderStyle = UITextBorderStyleRoundedRect;
(2) //设置输入框的背景颜色,此时设置为白色 如果使用了自定义的背景图片边框会被忽略掉
text.backgroundColor = [UIColor whiteColor];
(3) //设置背景
注意: 只有在 UITextBorderStyleNone 样式下,设置背景图才会生效,且图片大小小于 text 的frame时,图片会拉伸
text.background = [UIImage imageNamed:@"dd.png"];
(4) //设置背景
// 设置enable为NO 时的背景图片
text.disabledBackground = [UIImage imageNamed:@"cc.png"];
(5) //输入框中是否有个叉号,在什么时候显示,用于一次性删除输入框中的内容
text.clearButtonMode = UITextFieldViewModeAlways;
(6) //每输入一个字符就变成点 用语密码输入
text.secureTextEntry = YES;
(7) //是否纠错
text.autocorrectionType = UITextAutocorrectionTypeNo;
(8) //再次编辑就清空
text.clearsOnBeginEditing = YES;
(9) //内容对齐方式
text.textAlignment = UITextAlignmentLeft;
(10) //内容的垂直对齐方式
内容对齐方式
内容的垂直对齐方式 UITextField继承自UIControl,此类中有一个属性contentVerticalAlignment
_textField.textAlignment = UITextAlignmentLeft; text.contentVerticalAlignment = UIControlContentVerticalAlignmentCenter;
(11) //设置为YES时文本会自动缩小以适应文本窗口大小.默认是保持原来大小,而让长文本滚动
textFied.adjustsFontSizeToFitWidth = YES;
(12) //设置为YES时文本会自动缩小以适应文本窗口大小.默认是保持原来大小,而让长文本滚动
_textField.adjustsFontSizeToFitWidth = YES;
//设置自动缩小显示的最小字体大小,adjustsFontSizeToFitWidth为YES才会起作用
text.minimumFontSize = 20;
(13) //设置键盘的样式
text.keyboardType = UIKeyboardTypeNumberPad;
(14) //首字母是否大写
text.autocapitalizationType = UITextAutocapitalizationTypeNone;
(15) //return键变成什么键
text.returnKeyType =UIReturnKeyDone;
(16) //键盘外观
textView.keyboardAppearance=UIKeyboardAppearanceDefault;
(17) //最右侧加图片是以下代码 左侧类似
text.rightView=image;
text.rightViewMode = UITextFieldViewModeAlways;
重写绘制
//重写来重置文字区域
– textRectForBounds:
//改变绘文字属性.重写时调用super可以按默认图形属性绘制,若自己完全重写绘制函数,就不用调用super了.
– drawTextInRect:
//重写来重置占位符区域
– placeholderRectForBounds:
//重写改变绘制占位符属性.重写时调用super可以按默认图形属性绘制,若自己完全重写绘制函数,就不用调用super了.
– drawPlaceholderInRect:
//重写来重置边缘区域
– borderRectForBounds:
//重写来重置编辑区域
– editingRectForBounds:
//重写来重置clearButton位置,改变size可能导致button的图片失真
– clearButtonRectForBounds:
– leftViewRectForBounds:
– rightViewRectForBounds:
代理方法
//开始编辑
- (void)textFieldDidBeginEditing:(UITextField *)textField
// 当点击键盘的返回键([text resignFirstResponder]隐藏键盘,[receiver resignFirstResponder])
- (BOOL)textFieldShouldReturn:(UITextField *)textField
//是否循序文本字段开始编辑
- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField
//是否允许文本字段结束编辑
- (BOOL)textFieldShouldEndEditing:(UITextField *)textField
//是否允许根据用户请求清除内容
- (BOOL)textFieldShouldClear:(UITextField *)textField
//文字修改
- (BOOL)textField:(UITextField*)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string