事件
cocos2dx触摸事件分标准事件(CCStandardTouchDelegate)和目标事件(CCTargetedTouchDelegate),其中标准事件对象平等的接收并处理事件,而目标事件是优先级高的对象优先处理事件并决定是否拦截事件的继续穿博文,如果在ccTouchBegin返回false,那ccTouchMove,ccTouchEnd,ccTouchCancle都接收不到事件了。
CCLayer已经实现了标准事件(
CCStandardTouchDelegate
),在初始化的时候调用setTouchEnable(true)方法开启,层被删除或切换时时,事件会自动移除。
如果要使用目标事件,首先实现
CCTargetedTouchDelegate
接口,通过事件分发器注册
CCTouchDispatcher
>
addTargetedDelegate
(delegate,priority,isSwalles)。在onexit移除。
在游戏层中设置
setAccelerometerEnabled(true)
开启加速器,实现这个方法接受事件,
virtual void didAccelerate(CCAcceleration* pAccelerationValue);
CCAcceleration是一个结构体 包含加速度计获得的三个方向的加速度
,通过计算各方向速度的变化可定义出摇晃,抛物,掉落等事件。加速器是移动设备才有的功能。PC和移动设备触摸事件的区别是,PC可悬停可右击,移动设备可多点触摸。
CCTextFieldTTF
可输入文字控件。
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |