• UITextField使用简介


    UITextField公有属性、方法

    /**
     * TextField事件类型
     */
    enum class EventType
    {
        ATTACH_WITH_IME, // 键盘弹出
        DETACH_WITH_IME, // 键盘回收
        INSERT_TEXT,     // 输入字符
        DELETE_BACKWARD, // 删除字符
    };
    
    /**
     * 一个将在TextField事件发生时被调用的回调
     */
    typedef std::function<void(Ref*, EventType)> ccTextFieldCallback;
    
    
    /**
     * 构造函数
     */
    TextField();
    
    /**
     * 构造函数
     * @return TextField实例
     */
    static TextField* create();
    
    /**
     * 构造函数
     * @param placeholder   占位符
     * @param fontName The  字体名
     * @param fontSize The  字体大小
     * @return TextField实例
     */
    static TextField* create(const std::string& placeholder,
                             const std::string& fontName,
                             int fontSize);
    
    /**
     * 设置TextField触摸范围
     * 触摸范围用于 "hitTest"
     * @param 触摸范围
     */
    void setTouchSize(const Size &size);
    
    /**
     * 获取TextField的当前触摸范围
     * @return 触摸范围
     */
    Size getTouchSize()const;
    
    /**
     * 启用切换启用触摸区域。
     * @param enable 是否允许触摸
     */
    void setTouchAreaEnabled(bool enable);
    
    virtual bool hitTest(const Vec2 &pt, const Camera* camera, Vec3 *p) const override;
    
    /**
     * 设置占位符
     * @param value 占位符
     */
    void setPlaceHolder(const std::string& value);
    
    /**
     * 获取占位符
     * @return 占位符
     */
    const std::string& getPlaceHolder()const;
    
    /**
     * 设置占位符颜色
     * @param color 占位符颜色
     */
    void setPlaceHolderColor(const Color3B& color);
    void setPlaceHolderColor(const Color4B& color);
    
    /**
     * 获取占位符颜色
     * @return 占位符颜色
     */
    const Color4B& getPlaceHolderColor()const;
    
    /**
     * 设置文本颜色
     * @param textColor 文本颜色
     */
    void setTextColor(const Color4B& textColor);
    
    /**
     * 获取文本颜色
     * @return 文本颜色
     */
    const Color4B& getTextColor()const;
    
    /**
     * 设置文本大小
     * @param size 文本大小
     */
    void setFontSize(int size);
    
    /**
     * 获取文本大小
     * @return 文本大小
     */
    int getFontSize()const;
    
    /**
     * 设置文本字体
     * @param name 字体名
     */
    void setFontName(const std::string& name);
    
    /**
     * 获取文本字体
     * @return 文本字体
     */
    const std::string& getFontName()const;
    
    /**
     * 设置文本
     * @param text 文本
     */
    void setString(const std::string& text);
    
    /**
     * 获取文本
     * @return 文本
     */
    const std::string& getString()const;
    
    /**
     * 启用最大长度限制
     * @param enable 是否启用
     */
    void setMaxLengthEnabled(bool enable);
    
    /**
     * 获取是否启用最大长度
     * @return 是否启用
     */
    bool isMaxLengthEnabled()const;
    
    /**
     * 设置长度限制
     * @param length 最大长度
     */
    void setMaxLength(int length);
    
    /**
     * 获取长度限制的长度
     * @return 长度
     */
    int getMaxLength()const;
    
    /**
     * 获取文本长度
     * @return 文本长度
     */
    int getStringLength() const;
    
    /**
     * 启用密文模式
     * @param enable 是否启用密文模式
     */
    void setPasswordEnabled(bool enable);
    
    /**
     * 获取是否启用了密文模式
     * @return 是否启用密文模式
     */
    bool isPasswordEnabled()const;
    
    /**
     * 设置密文模式字符样式
     * @param styleText 字符样式,默认为'*'
     */
    void setPasswordStyleText(const char* styleText);
    
    /**
     * 获取密文样式
     * @return 密文样式
     */
    const char* getPasswordStyleText()const;
    
    /**
     * 设置启用IME
     * @param attach 如果附加IME则为true,否则为false。
     */
    void setAttachWithIME(bool attach);
    
    /**
     * 查询IME是否附加。
     * @return 如果附加了IME,则为true;否则为false。
     */
    bool getAttachWithIME()const;
    
    /**
     * 设置与IME分离
     * @param detach 是否分离
     */
    void setDetachWithIME(bool detach);
    
    /**
     * 查询IME是否被分离
     * @return 是否分离
     */
    bool getDetachWithIME()const;
    
    /**
     * 启用插入文本模式
     * @param true,启用;false,未启用
     */
    void setInsertText(bool insertText);
    
    /**
     * 是否准备好插入文本
     * @return 如果插入文本准备就绪,则返回true,否则返回false
     */
    bool getInsertText()const;
    
    /**
     * 启用删除字符模式
     * @param deleteBackward true,启用;false,未启用
     */
    void setDeleteBackward(bool deleteBackward);
    
    /**
     * 是否准备好删除文本
     * @return true进行删除文本,否则为false。
     */
    bool getDeleteBackward()const;
    
    /**
     * 给TextField添加一个事件监听器,当某个预定义的事件发生时,回调将被调用。
     * @param target   事件对象
     * @param selecor  对调函数
     */
    void addEventListener(const ccTextFieldCallback& callback);
    
    /**
     * 打开键盘
     */
    void attachWithIME();
    
    /**
     * 设置文字渲染范围(即文本显示范围)
     * 注意:要实现该函数的效果,必须调用该对象的ignoreContentAdaptWithSize(false)
     * @param 渲染范围
     */
    void setTextAreaSize(const Size &size);
    
    /**
     * 设置水平方向对齐方式
     * @param alignment 对齐方式,查看TextHAlignment
     */
    void setTextHorizontalAlignment(TextHAlignment alignment);
    
    /**
     * 获取水平方向对齐方式
     * @return 对齐方式
     */
    TextHAlignment getTextHorizontalAlignment() const;
    
    /**
     * 设置垂直方向对齐方式
     * @param alignment 对齐方式,查看TextVAlignment
     */
    void setTextVerticalAlignment(TextVAlignment alignment);
    
    /**
     * 获取垂直方向对齐方式
     * @return 对齐方式
     */
    TextVAlignment getTextVerticalAlignment() const;
  • 相关阅读:
    委托
    Ajax TreeView绑定数据库(一)
    递归算法算出1,1,2,3,5.........(二)
    Ajax技术之深入浅出
    javasript读写xml
    递归算法求阶乘(一)
    关于.Net中的实际开发
    ASP.NET Form表单验证
    js 实现自动合并相同的行
    递归快速排序
  • 原文地址:https://www.cnblogs.com/guangyun/p/8991542.html
Copyright © 2020-2023  润新知