iOS-UITextField类

文字属性

  •   text  
  •   placeholder   //默认使用70%灰色
  •   font 
  •   textColor 
  •   textAlignment 

文字大小

  •   adjustsFontSizeToFitWidth 
  •   minimumFontSize 

编辑行为

  •   editing     //是否正在编辑(read-only)
  •   clearsOnBeginEditing 

展现形态

  •   borderStyle     //默认UITextBorderStyleNone,是UITextBorderStyleRoundedRect时自定义的background无效
  •   background 
  •   disabledBackground  property    //background未设置时,这个会无效

覆盖视图

  •   clearButtonMode 
  •   leftView   //clearButton那样的视图,不过在左边,不要忘了设置mode
  •   leftViewMode 
  •   rightView   //默认覆盖clearButton
  •   rightViewMode 

访问代理

  •   delegate  property

绘画界面

以下都不应直接调用,需要的话可以重写

  • – textRectForBounds:  //重写来重置文字区域
  • – drawTextInRect:  //改变绘文字属性.重写时调用super可以按默认图形属性绘制,若自己完全重写绘制函数,就不用调用super了.
  • – placeholderRectForBounds:  //重写来重置占位符区域
  • – drawPlaceholderInRect:  //重写改变绘制占位符属性.重写时调用super可以按默认图形属性绘制,若自己完全重写绘制函数,就不用调用super了.
  • – borderRectForBounds:  //重写来重置边缘区域
  • – editingRectForBounds:  //重写来重置编辑区域
  • – clearButtonRectForBounds:  //重写来重置clearButton位置,改变size可能导致button的图片失真
  • – leftViewRectForBounds:
  • – rightViewRectForBounds:

代替输入

  •   inputView     //代替标准的系统键盘
  •   inputAccessoryView   //编辑时显示在系统键盘或用户自定义的inputView上面的视图

 

 

UITextFieldBorderStyle

typedef enum {
   UITextBorderStyleNone,//无框
   UITextBorderStyleLine,//线框
   UITextBorderStyleBezel,//bezel风格线框
   UITextBorderStyleRoundedRect//圆角边框
} UITextBorderStyle;

UITextFieldViewMode

typedef enum {
   UITextFieldViewModeNever,
   UITextFieldViewModeWhileEditing,
   UITextFieldViewModeUnlessEditing,
   UITextFieldViewModeAlways
} UITextFieldViewMode; 

Notifications

UITextFieldTextDidBeginEditingNotification

UITextFieldTextDidChangeNotification

UITextFieldTextDidEndEditingNotification

 

委托事件

@protocol UITextFieldDelegate <NSObject>

@optional

- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField;        // 返回NO则不许编辑

- (void)textFieldDidBeginEditing:(UITextField *)textField;           // became first responder

- (BOOL)textFieldShouldEndEditing:(UITextField *)textField;          // 返回YES允许结束并且resign first responder status. 返回NO不许编辑状态结束

- (void)textFieldDidEndEditing:(UITextField *)textField;             // 上面返回YES后执行;上面返回NO时有可能强制执行(e.g. view removed from window)

- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string;   // 返回NO不改变

- (BOOL)textFieldShouldClear:(UITextField *)textField;               // clear button事件,返回NO过滤之

- (BOOL)textFieldShouldReturn:(UITextField *)textField;              // 'return' key事件.返回NO过滤之

@end

你可能感兴趣的:(ios,UITextField)