UITextFiled

UITextFiled : iOS中可以输入的控件,也就是输入框主要进行文字的输入控制和显示UILabel相比,仅仅多的是文字的输入功能在使用上和UILabel没有区别

配置属性
UITextField *tf = [[UITextField alloc]initWithFrame:CGRectMake(50, 100, 275, 50)];    
tf.backgroundColor = [UIColor whiteColor];
//(1)文字显示
    //a.显示内容
    tf.text = @"Duang~ Duang~";
    //b.设置文字颜色
    tf.textColor = [UIColor blackColor];
    //c.设置文字对齐方式
    tf.textAlignment = NSTextAlignmentLeft;
    //d.字体
    tf.font = [UIFont systemFontOfSize:20];
    //e.设置 占位提示符
    tf.placeholder = @"请输入用户名";
    
//(2)输入控制
    //a.设置是否可以输入 (可以控制输入框 输入的时机)
    tf.enabled = YES;
    //b.清空设置 当开始编辑 是否进行清空
    tf.clearsOnBeginEditing = YES;
    //c.设置键盘风格
    tf.keyboardType = UIKeyboardTypeDefault;
    //d.设置 return 风格
    tf.returnKeyType = UIReturnKeyDefault;
    //e.设置安全模式 (密码模式)
    tf.secureTextEntry = YES;
    //f.设置 输入弹出视图(默认 是键盘)
    UIView *view = [[UIView alloc]initWithFrame:CGRectMake(0, 0, 375, 275)];
    view.backgroundColor = [UIColor lightGrayColor];
    tf.inputView =view;
    //g.设置辅助 输入视图
    UILabel *lable = [[UILabel alloc]initWithFrame:CGRectMake(0, 0, 375, 40)];
//(3)外观 控制
    //a.设置输入框样式
    tf.borderStyle = UITextBorderStyleRoundedRect;
    //b.设置清除按钮的模式
    tf.clearButtonMode = UITextFieldViewModeWhileEditing;
    //c.左视图
    UILabel *nameLabel = [[UILabel alloc]initWithFrame:CGRectMake(0, 0, 75, 50)];
    nameLabel.text = @"用户名";
    nameLabel.textAlignment = NSTextAlignmentCenter;
    nameLabel.textColor = [UIColor blackColor];
    nameLabel.backgroundColor = [UIColor lightGrayColor];
    //nameLabel.backgroundColor = [UIColor colorWithRed:76/255.0 green:98/225.0 blue:124/225.0 alpha:0.8];
    tf.leftView = nameLabel;
    //左视图 模式
    tf.leftViewMode = UITextFieldViewModeAlways;

 

UITextField属性

0. enablesReturnKeyAutomatically 默认为No,如果设置为Yes,文本框中没有输入任何字符的话,右下角的返回按钮是disabled的。 

1.borderStyle 设置边框样式,只有设置了才会显示边框样式    

text.borderStyle = UITextBorderStyleRoundedRect;  

typedef enum {     UITextBorderStyleNone,      UITextBorderStyleLine,     UITextBorderStyleBezel,     UITextBorderStyleRoundedRect     } UITextBorderStyle; 

2.backgroundColor  设置输入框的背景颜色,此时设置为白色 如果使用了自定义的背景图片边框会被忽略掉    

text.backgroundColor = [UIColor whiteColor]; 

3.background 设置背景   text.background = [UIImage imageNamed:@"dd.png"];

//UITextField 的背景,注意只有UITextBorderStyleNone的时候改属性有效   设置enable为no时,textfield的背景    text.disabledBackground = [UIImage imageNamed:@"cc.png"]; 

4.placeholder  占位符当输入框没有内容时, 提示内容为password   

text.placeholder = @"password"; 

5.font 设置输入框内容的字体样式和大小   text.font = [UIFont fontWithName:@"Arial" size:20.0f];

6. textColor 设置字体颜色   text.textColor = [UIColor redColor]; 

7. clearButtonMode  清除按钮输入框中是否有个叉号,在什么时候显示,用于一次性删除输入框中的内容   

text.clearButtonMode = UITextFieldViewModeAlways;  

typedef enum {     UITextFieldViewModeNever, 从不出现    

    UITextFieldViewModeWhileEditing, 编辑时出现     UITextFieldViewModeUnlessEditing, 除了编辑外都出现     

    UITextFieldViewModeAlways  一直出现 } UITextFieldViewMode; 

8. text 输入框中一开始就有的文字   text.text = @"一开始就在输入框的文字"; 

9. secureTextEntry   密钥形式每输入一个字符就变成点 用来输入密码时,设置这个属性。   

text.secureTextEntry = YES; 

10. autocorrectionType 是否纠错   text.autocorrectionType = UITextAutocorrectionTypeNo; 

typedef enum {     UITextAutocorrectionTypeDefault, 默认     

    UITextAutocorrectionTypeNo,  不自动纠错     

    UITextAutocorrectionTypeYes, 自动纠错 } UITextAutocorrectionType; 

11. clearsOnBeginEditing 再次编辑就清空   text.clearsOnBeginEditing = YES;  

12. textAlignment 内容对齐方式   text.textAlignment = UITextAlignmentLeft;

13. contentVerticalAlignment 内容的垂直对齐方式  UITextField继承自UIControl,此类中有一个属性contentVerticalAlignment   text.contentVerticalAlignment = UIControlContentVerticalAlignmentCenter; 

14. adjustsFontSizeToFitWidth 设置为YES时文本会自动缩小以适应文本窗口大小.默认是保持原来大小,而让长文本滚动    textFied.adjustsFontSizeToFitWidth = YES; //设置自动缩小显示的最小字体大小   

 text.minimumFontSize = 20;  

15. keyboardType 设置键盘的样式   text.keyboardType = UIKeyboardTypeNumberPad; 

typedef enum {     UIKeyboardTypeDefault,      默认键盘,支持所有字符UIKeyboardTypeASCIICapable, 支持ASCII的默认键盘     UIKeyboardTypeNumbersAndPunctuation, 标准电话键盘,支持+*#字符     

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

    UIKeyboardTypeNumberPad,             数字键盘 

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

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

    UIKeyboardTypeDecimalPad,    数字键盘 有数字和小数点     

    UIKeyboardTypeTwitter,       优化的键盘,方便输入@、#字符     

    UIKeyboardTypeAlphabet = UIKeyboardTypeASCIICapable,  } UIKeyboardType; 

16.autocapitalizationType 首字母是否大写   text.autocapitalizationType = UITextAutocapitalizationTypeNone; 

typedef enum {     UITextAutocapitalizationTypeNone, 不自动大写     

   UITextAutocapitalizationTypeWords, 单词首字母大写     

   UITextAutocapitalizationTypeSentences, 句子的首字母大写     

   UITextAutocapitalizationTypeAllCharacters, 所有字母都大写 } UITextAutocapitalizationType; 

17. returnKeyType return键变成什么键  text.returnKeyType =UIReturnKeyDone; 

typedef enum {     UIReturnKeyDefault, 默认 灰色按钮,标有Return     

    UIReturnKeyGo,     标有Go的蓝色按钮     UIReturnKeyGoogle,标有Google的蓝色按钮,用语搜索     

    UIReturnKeyJoin,标有Join的蓝色按钮     

    UIReturnKeyNext,标有Next的蓝色按钮     

    UIReturnKeyRoute,标有Route的蓝色按钮     

    UIReturnKeySearch,标有Search的蓝色按钮     

    UIReturnKeySend,标有Send的蓝色按钮     

    UIReturnKeyYahoo,标有Yahoo的蓝色按钮     

    UIReturnKeyYahoo,标有Yahoo的蓝色按钮     

    UIReturnKeyEmergencyCall, 紧急呼叫按钮 } UIReturnKeyType;

18. keyboardAppearance 键盘外观 textView.keyboardAppearance=UIKeyboardAppearanceDefault; 

typedef enum { UIKeyboardAppearanceDefault, 默认外观,浅灰色 

UIKeyboardAppearanceAlert,   深灰 石墨色 } UIReturnKeyType;    

19. delegate 设置代理 用于实现协议   text.delegate = self; 

20.  rightView 最右侧加图片是以下代码  左侧类似     UIImageView *image=[[UIImageView alloc] initWithImage:[UIImage imageNamed:@"right.png"]];            text.rightView=image;     text.rightViewMode = UITextFieldViewModeAlways;  

typedef enum {     UITextFieldViewModeNever,    从不存在 

    UITextFieldViewModeWhileEditing,    编辑时存在  

    UITextFieldViewModeUnlessEditing,    除了编辑时存在 

    UITextFieldViewModeAlways   一直存在 } UITextFieldViewMode; 

21. editing 是否允许编辑

22. delegate 类要遵守UITextFieldDelegate协议   text.delegate = self; 声明text的代理是我,我会去实现把键盘往下收的方法 这个方法在UITextFieldDelegate里所以我们要遵守UITextFieldDelegate这个协议

- (BOOL)textFieldShouldReturn:(UITextField *)textField { 
    [text resignFirstResponder];  //第一响应者   
//主要是[receiver resignFirstResponder]在哪调用就能把receiver(text)对应的键盘往下收 
    return YES; 
}
//代理方法  
- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField{     
//返回一个BOOL值,YES代表允许编辑,NO不允许编辑.      
   return YES;  
}    
- (void)textFieldDidBeginEditing:(UITextField *)textField{
   //开始编辑时触发,文本字段将成为first responder  
}
</pre>- (BOOL)textFieldShouldEndEditing:(UITextField *)textField{  //返回BOOL值,指定是否允许文本字段结束编辑,当编辑结束,文本字段会让出first responder    <p></p><pre>
//要想在用户结束编辑时阻止文本字段消失,可以返回NO ,返回NO,点击键盘的返回按钮会无效果。   
//这对一些文本字段必须始终保持活跃状态的程序很有用,比如即时消息     
    return NO;  
}  
- (void)textFieldDidEndEditing:(UITextField *)textField;{   
}
// 上面返回YES后执行;上面返回NO时有可能强制执行(e.g. view removed from window) 

</pre><pre name="code" class="objc">-(BOOL)textField:(UITextField*)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string{  
//当用户使用自动更正功能,把输入的文字修改为推荐的文字时,就会调用这个方法。  
//这对于想要加入撤销选项的应用程序特别有用  
//可以跟踪字段内所做的最后一次修改,也可以对所有编辑做日志记录,用作审计用途。    
//要防止文字被改变可以返回NO  
//这个方法的参数中有一个NSRange对象,指明了被改变文字的位置,建议修改的文本也在其中    
    return YES;  
   
- (BOOL)textFieldShouldClear:(UITextField *)textField{    
//返回一个BOOL值指明是否允许根据用户请求清除内容  
//可以设置在特定条件下才允许清除内容    
    return YES;  
}
</pre><pre name="code" class="objc">-(BOOL)textFieldShouldReturn:(UITextField *)textField{    
//返回一个BOOL值,指明是否允许在按下回车键时结束编辑  
 //如果允许要调用resignFirstResponder 方法,这回导致结束编辑,而键盘会被收起
[textField resignFirstResponder]; 
//查一下resign这个单词的意思就明白这个方法了      
 return YES; 



25.Stroyboard中: 
1、Text :设置文本框的默认文本。 
2、Placeholder : 可以在文本框中显示灰色的字,用于提示用户应该在这个文本框输入什么内容。当这个文本框中输入了数据时,用于提示的灰色的字将会自动消失。 

3、Background : 
4、Disabled : 若选中此项,用户将不能更改文本框内容。 

5、接下来是三个按钮,用来设置对齐方式。 

6、Border Style : 选择边界风格。 
7、Clear Button : 这是一个下拉菜单,你可以选择清除按钮什么时候出现,所谓清除按钮就是出一个现在文本框右边的小 X ,你可以有以下选择: 
7.1 Never appears : 从不出现     7.2 Appears while editing : 编辑时出现     

7.3 Appears unless editing :      7.4 Is always visible : 总是可见 

8、Clear when editing begins : 若选中此项,则当开始编辑这个文本框时,文本框中之前的内容会被清除掉。比如,你现在这个文本框 A 中输入了 "What" ,之后去编辑文本框 B,若再回来编辑文本框 A ,则其中的 "What" 会被立即清除。 

9、Text Color : 设置文本框中文本的颜色。 

10、Font : 设置文本的字体与字号。 
11、Min Font Size : 设置文本框可以显示的最小字体(不过我感觉没什么用) 
12、Adjust To Fit : 指定当文本框尺寸减小时,文本框中的文本是否也要缩小。选择它,可以使得全部文本都可见,即使文本很长。但是这个选项要跟 Min Font Size 配合使用,文本再缩小,也不会小于设定的 Min Font Size 。 接下来的部分用于设置键盘如何显示。

13、Captitalization : 设置大写。下拉菜单中有四个选项:     

13.1 None : 不设置大写   

13.2 Words : 每个单词首字母大写,这里的单词指的是以空格分开的字符串 

13.3 Sentances : 每个句子的第一个字母大写,这里的句子是以句号加空格分开的字符串     

13.4 All Characters : 所以字母大写 

14、Correction : 检查拼写,默认是 YES 。 
15、Keyboard : 选择键盘类型,比如全数字、字母和数字等。 

16、Appearance: 
17、Return Key : 选择返回键,可以选择 Search 、 Return 、 Done 等。 
18、Auto-enable Return Key : 如选择此项,则只有至少在文本框输入一个字符后键盘的返回键才有效。 

19、Secure : 当你的文本框用作密码输入框时,可以选择这个选项,此时,字符显示为星号。
1.Alignment Horizontal 水平对齐方式 

2.Alignment Vertical 垂直对齐方式 
3.用于返回一个BOOL值 输入框是否 Selected(选中) Enabled(可用) Highlighted(高亮)








  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值