iOS界面设计之基础控件的学习 --- UITextField
2016-09-18 16:45
399 查看
学习iOS界面设计也有段时间了,每次写到一些基础控件(如:UILable 、 UITextField)的时候就深觉应该总结一个函数来实现这些基础控件的属性设置,所以下面就是我对UITextField的学习:
一、定义一个输入控件
二、在viewDidLoad中实例化
三、UITextField的常用属性设置
四、UITextFieldDelegate 方法
五、收起键盘的方法:
六、拓展:除了上述一些常用的属性外,还有其他属性也需要了解
minimumFontSize :自动缩小显示的最小字体
adjustsFontSizeToFitWidth:是否自动调整字体大小
contentVerticalAlignment:垂直对齐方式
inputAccessoryView:输入附属视图
inputView:输入视图(键盘视图)
有些时候要自定义键盘的话,就可以给inputAccessoryView 和inputView两个属性赋值,如果是自定义UITextField,则需要重写这两个属性的getter方法。
以上是我对UITextField的一些总结,如有写得不准确或不完善的地方,还请指正补充,谢谢!!!
一、定义一个输入控件
// 输入控件 @property (nonatomic,strong) UITextField *textField;
二、在viewDidLoad中实例化
- (void)viewDidLoad { [super viewDidLoad]; // 实例化输入框 _textField = [[UITextField alloc]initWithFrame:CGRectMake(40, 100, 295, 40)]; // 设置textField的属性 [self propertyOfTextField:_textField]; // 添加到父视图 [self.view addSubview:_textField]; }
三、UITextField的常用属性设置
#pragma mark - UITextField属性设置 - (void)propertyOfTextField:(UITextField *)textField { // 设置边框样式 textField.borderStyle = UITextBorderStyleRoundedRect; // 设置占位符 textField.placeholder = @"占位符"; // 设置光标的颜色 textField.tintColor = [UIColor redColor]; // 设置输入框背景颜色 textField.backgroundColor = [UIColor lightGrayColor]; // 设置text字体的颜色 textField.textColor = [UIColor orangeColor]; // 清除模式 textField.clearButtonMode = UITextFieldViewModeWhileEditing; // 是否安全输入 textField.secureTextEntry = NO; // 设置字体大小 textField.font = [UIFont systemFontOfSize:24]; // 文本对齐方式 textField.textAlignment = NSTextAlignmentLeft; // 是否纠错(即:联想) textField.autocorrectionType = UITextAutocorrectionTypeNo; // 首字母是否大写 textField.autocapitalizationType = UITextAutocapitalizationTypeNone; // 再次编辑时是够清空 textField.clearsOnBeginEditing = YES; // 设置键盘样式 textField.keyboardAppearance = UIKeyboardAppearanceDark; // 设置return按钮的样式 textField.returnKeyType = UIReturnKeySearch; // 设置代理 textField.delegate = self; }
四、UITextFieldDelegate 方法
#pragma mark - <UITextFieldDelegate> method // 1. 是否允许开始编辑 - (BOOL)textFieldShouldBeginEditing:(UITextField *)textField { return YES; } // 2. 已经开始编辑时触发 - (void)textFieldDidBeginEditing:(UITextField *)textField { } // 3. 是否允许结束编辑 - (BOOL)textFieldShouldEndEditing:(UITextField *)textField { return YES; } // 4. 已经结束编辑是触发 - (void)textFieldDidEndEditing:(UITextField *)textField { } // 5. 是否允许改变文本输入框字符的长度 可以得到用户输入的字符 - (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string { // 可在限制用户输入字符的长度以及敏感字符的输入等 return YES; } // 6. 是否允许清除 - (BOOL)textFieldShouldClear:(UITextField *)textField { return YES; } // 7. 是否响应return键 - (BOOL)textFieldShouldReturn:(UITextField *)textField { // 用户点击键盘上的return键会触发该方法,所以可在此处完成点击return的一些操作 return YES; }
五、收起键盘的方法:
// 收键盘1 -- 文本失去第一响应 [textField resignFirstResponder]; // 收键盘2 -- 界面停止编辑 [self.view endEditing:YES];
六、拓展:除了上述一些常用的属性外,还有其他属性也需要了解
minimumFontSize :自动缩小显示的最小字体
adjustsFontSizeToFitWidth:是否自动调整字体大小
contentVerticalAlignment:垂直对齐方式
inputAccessoryView:输入附属视图
inputView:输入视图(键盘视图)
有些时候要自定义键盘的话,就可以给inputAccessoryView 和inputView两个属性赋值,如果是自定义UITextField,则需要重写这两个属性的getter方法。
以上是我对UITextField的一些总结,如有写得不准确或不完善的地方,还请指正补充,谢谢!!!
相关文章推荐
- 界面设计01 - 零基础入门学习Delphi42
- Android界面设计基础:控件焦点4个步骤
- 一步步学习微软InfoPath2010和SP2010--第三章节--表单设计基础:处理InfoPath布局、控件和视图(2)--添加一个布局和表格
- 一步步学习微软InfoPath2010和SP2010--第三章节--表单设计基础:处理InfoPath布局、控件和视图(6)--添加控件到Flight Delay表单
- 一步步学习微软InfoPath2010和SP2010--第三章节--表单设计基础:处理InfoPath布局、控件和视图(2)--添加一个布局和表格
- 界面设计02 - 零基础入门学习Delphi43
- IOS学习四:基础控件Label,textfield,button等使用
- 一步步学习微软InfoPath2010和SP2010--第三章节--表单设计基础:处理InfoPath布局、控件和视图(3)--InfoPath控件
- 一步步学习微软InfoPath2010和SP2010--第三章节--表单设计基础:处理InfoPath布局、控件和视图(1)--表单布局
- 一步步学习微软InfoPath2010和SP2010--第三章节--表单设计基础:处理InfoPath布局、控件和视图(6)--添加控件到Flight Delay表单
- Android界面设计基础:控件焦点4个步骤
- IOS学习笔记(四)之UITextField和UITextView控件学习
- (转)iOS7界面设计规范(2) - UI基础 - iOS应用解析
- 一步步学习微软InfoPath2010和SP2010--第三章节--表单设计基础:处理InfoPath布局、控件和视图(3)--InfoPath控件
- Android界面设计基础:控件焦点4个步骤_12点圆形布局
- Android界面设计基础:控件焦点4个步骤
- IOS学习笔记(四)之UITextField和UITextView控件学习
- 一步步学习微软InfoPath2010和SP2010--第三章节--表单设计基础:处理InfoPath布局、控件和视图
- IOS学习笔记(四)之UITextField和UITextView控件学习
- 一步步学习微软InfoPath2010和SP2010--第三章节--表单设计基础:处理InfoPath布局、控件和视图(5)--理解数据绑定的基础