iOS开发(4)UITextField
2014-04-07 14:52
232 查看
UITextField是UI控件中的文本输入框控件,拥有自己的代理可以监听用户输入的数据。
//创建一个UITextField
UITextField *textField = [[UITextField
alloc] initWithFrame:CGRectMake(120.0f,
80.0f, 150.0f,
30.0f)];
//外框类型
[textField setBorderStyle:UITextBorderStyleRoundedRect];
//默认显示的字
textField.placeholder =
@"input";
//输入的内容是否保密
主要用于密码输入
textField.secureTextEntry =
NO;
//自动校正样式
textField.autocorrectionType =
UITextAutocorrectionTypeNo;
textField.autocapitalizationType =
UITextAutocapitalizationTypeNone;
//return按钮的样式
textField.returnKeyType =
UIReturnKeyDone;
//编辑时会出现个修改X
点击后会清空内容
textField.clearButtonMode =
UITextFieldViewModeWhileEditing;
//下次输入时是否清空上次的内容
textField.clearsOnBeginEditing =
NO;
textField.delegate =
self;//设置代理
下面介绍一下UITextField的代理
- (void)textFieldDidBeginEditing:(UITextField *)textField
{
NSLog(@"开始编辑时会走这个方法");
}
- (void)textFieldDidEndEditing:(UITextField *)textField
{
NSLog(@"结束编辑时会走这个方法");
}
-(BOOL)textFieldShouldBeginEditing:(UITextField *)textField
{
NSLog(@"是否可以开始编辑");
return
YES;
}
//隐藏键盘
- (BOOL)textFieldShouldReturn:(UITextField *)textField
{
//return之前让textfield通过下面方法失去第一响应者,也就是隐藏键盘
[textField resignFirstResponder];
return
YES;
}
//限制输入文本的长度
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range
replacementString:(NSString *)string
{
//这里可以对输入框输入的内容增加限制
NSLog(@"%d ,%d",range.location,range.length);
NSLog(@"%@",string);
if (range.location >=
20)
return
NO;// return NO to not change text
if ([string isEqualToString:@"d"])
return NO;
return
NO;
}
- (BOOL)textFieldShouldClear:(UITextField *)textField
{
return
NO;
}
- (BOOL)textFieldShouldEndEditing:(UITextField *)textField
{
// textField.text = @"";
return
YES;
}
关于TextField一个很重要的部分就是如何去监听键盘在屏幕的高度,因为很多时候我们整个输入框弹起来的时候会遮住其他一些图像。下一节将介绍一下键盘的通知。
//创建一个UITextField
UITextField *textField = [[UITextField
alloc] initWithFrame:CGRectMake(120.0f,
80.0f, 150.0f,
30.0f)];
//外框类型
[textField setBorderStyle:UITextBorderStyleRoundedRect];
//默认显示的字
textField.placeholder =
@"input";
//输入的内容是否保密
主要用于密码输入
textField.secureTextEntry =
NO;
//自动校正样式
textField.autocorrectionType =
UITextAutocorrectionTypeNo;
textField.autocapitalizationType =
UITextAutocapitalizationTypeNone;
//return按钮的样式
textField.returnKeyType =
UIReturnKeyDone;
//编辑时会出现个修改X
点击后会清空内容
textField.clearButtonMode =
UITextFieldViewModeWhileEditing;
//下次输入时是否清空上次的内容
textField.clearsOnBeginEditing =
NO;
textField.delegate =
self;//设置代理
下面介绍一下UITextField的代理
- (void)textFieldDidBeginEditing:(UITextField *)textField
{
NSLog(@"开始编辑时会走这个方法");
}
- (void)textFieldDidEndEditing:(UITextField *)textField
{
NSLog(@"结束编辑时会走这个方法");
}
-(BOOL)textFieldShouldBeginEditing:(UITextField *)textField
{
NSLog(@"是否可以开始编辑");
return
YES;
}
//隐藏键盘
- (BOOL)textFieldShouldReturn:(UITextField *)textField
{
//return之前让textfield通过下面方法失去第一响应者,也就是隐藏键盘
[textField resignFirstResponder];
return
YES;
}
//限制输入文本的长度
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range
replacementString:(NSString *)string
{
//这里可以对输入框输入的内容增加限制
NSLog(@"%d ,%d",range.location,range.length);
NSLog(@"%@",string);
if (range.location >=
20)
return
NO;// return NO to not change text
if ([string isEqualToString:@"d"])
return NO;
return
NO;
}
- (BOOL)textFieldShouldClear:(UITextField *)textField
{
return
NO;
}
- (BOOL)textFieldShouldEndEditing:(UITextField *)textField
{
// textField.text = @"";
return
YES;
}
关于TextField一个很重要的部分就是如何去监听键盘在屏幕的高度,因为很多时候我们整个输入框弹起来的时候会遮住其他一些图像。下一节将介绍一下键盘的通知。
相关文章推荐
- 【iOS学习笔记】界面开发UItextField定制全局组件_自定文字左边距、图标
- 【iOS开发】修改UITextfield的Placeholder字体的颜色
- iOS开发:常用的UIView控件——UILabel、UITextField、UIButton【转】
- ios开发之uitextview及uitextfield获得焦点时弹出的键盘及键盘上面的附加view设置
- 【iOS 开发】基本 UI 控件详解 (UIButton | UITextField | UITextView | UISwitch)
- 学习IOS开发UI篇--UI知识点总结(一) UIButton/UITextField
- iOS开发之UITextField(输入框)限制只能输入整数和小数
- iOS开发——改变UITextField的样式:占位符颜色、字符起始位置等
- iOS开发1:UITextField控件属性
- ios开发--UIBtutton、UITextField
- 在IOS实际开发中有些UITextField需要限制输入内容
- iOS开发总结之UITextField常用属性和方法
- iOS开发笔记之解决键盘遮挡UITextField问题
- IOS开发Swift语言键盘遮挡输入框(UITextField)
- iOS开发~修改UITextField的placeholder的字体大小、颜色
- iOS开发笔记--使用UITextField自动格式化银行卡号
- IOS 开发更改UITextField的Placeholder颜色
- iOS开发1:UITextField控件属性
- IOS开发Swift语言UITextField设置靠左的间距
- iOS开发之UITextField 左侧设置小图标 leftview