zoukankan      html  css  js  c++  java
  • 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

  • 相关阅读:
    关于32位操作系统和64位操作系统对InstallShield打包的影响
    NEWS: Symantec宣布Wise Package Studio将终止
    InstallShield 2012新功能试用(2) 调用MsiGetProperty等MSI API发生变化
    Basic INFO 在命令行Build InstallShield安装包工程获得压缩安装包
    NEWS InstallShield 2012 Service Pack 1发布
    Basic INFO InstallShield Basic MSI工程中如何在SetupCompleteSuccess界面中启动Readme
    Basic INFO InstallShield的脚本编辑器中如何显示代码行号
    Basic INFO 关于在InstallShield制作的安装包界面中删除InstallShield文字的厂商回复
    Basic INFO InstallShield工程中如何让产品的快捷方式名称始终与产品名保持一致
    Basic INFO: 创建隐藏文件夹
  • 原文地址:https://www.cnblogs.com/v2m_/p/2230446.html
Copyright © 2011-2022 走看看