cocos2d-x节点(CCIMEDispatcher.h)API

本文详细介绍了cocos2d-x中与IME(输入法管理器)交互的CCIMEDispatcher.h头文件所包含的API,讲解如何在cocos2d-x游戏中处理用户输入。推荐配合作者的《Cocos2d-X权威指南笔记》进行深入学习。
摘要由CSDN通过智能技术生成

本文来自http://blog.csdn.net/runaying ,引用必须注明出处!

cocos2d-x节点(CCIMEDispatcher.h)API

温馨提醒:为了大家能更好学习,强烈推荐大家看看本人的这篇博客 Cocos2d-X权威指南笔记

IME调度

//cocos2d-x-3.0alpha0/cocos2dx/text_input_node
//IME调度


#ifndef __CC_IME_DISPATCHER_H__
#define __CC_IME_DISPATCHER_H__

#include "CCIMEDelegate.h"

NS_CC_BEGIN

/**
 * @addtogroup input
 * @{
 */

/**
@brief    输入法编辑调度信息.
*/
class CC_DLL IMEDispatcher
{
public:
    /**
     * @js NA
     * @lua NA
     */
    ~IMEDispatcher();

    /**
     @brief Returns 系统共享的 IMEDispatcher 对象
     * @js NA
     * @lua NA
     */
    static IMEDispatcher* sharedDispatcher();

//     /**
//     @brief 从共享的 dispatcher 释放所有的 IMEDelegates
//     */
//     static void purgeSharedDispatcher();

    /**
     @brief 调度 IME 输入文字.
     * @js NA
     * @lua NA
     */
    void dispatchInsertText(const char * pText, int nLen);

    /**
     @brief 调度 delete-backward 操作
     * @js NA
     * @lua NA
     */
    void dispatchDeleteBackward();

    /**
     @brief 从 IMEDelegate 获取内容文本, 
     * @js NA
     * @lua NA
     */
    const char * getContentText();

    //
    // dispatch keyboard notification           //调度键盘通知
    //
    /**
     * @js NA
     * @lua NA
     */
    void dispatchKeyboardWillShow(IMEKeyboardNotificationInfo& info);
    /**
     * @js NA
     * @lua NA
     */
    void dispatchKeyboardDidShow(IMEKeyboardNotificationInfo& info);
    /**
     * @js NA
     * @lua NA
     */
    void dispatchKeyboardWillHide(IMEKeyboardNotificationInfo& info);
    /**
     * @js NA
     * @lua NA
     */
    void dispatchKeyboardDidHide(IMEKeyboardNotificationInfo& info);

protected:
    friend class IMEDelegate;

    /**
    @brief 添加代理接受 IME 消息.
    */
    void addDelegate(IMEDelegate * pDelegate);

    /**
    @brief 把 pDelegate 关联到 IME.
    @return 如果旧的 delegate 可以脱离 IME, 新的 delegate
            可以关联到 IME, return true, otherwise false.
    */
    bool attachDelegateWithIME(IMEDelegate * pDelegate);
    bool detachDelegateWithIME(IMEDelegate * pDelegate);

    /**
    @brief 从接收 IME 消息的 delegates 移除制定 delegate
    */
    void removeDelegate(IMEDelegate * pDelegate);

private:
    IMEDispatcher();
    
    class Impl;
    Impl * _impl;
};

// end of input group
/// @}

NS_CC_END

#endif    // __CC_IME_DISPATCHER_H__



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值