游戏开发论坛

 找回密码
 立即注册
搜索
查看: 2103|回复: 1

cocos2d-x初探学习笔记(4)--触屏事件

[复制链接]

7867

主题

7909

帖子

1万

积分

论坛元老

Rank: 8Rank: 8

积分
19358
发表于 2013-5-30 14:54:34 | 显示全部楼层 |阅读模式
         作者:小满

         1.场景触屏

         一般在菜单中,不是继承自CCLayer,这时候要检测触屏,就需要两步就可以完成

         第一步:setIsTouchEnabled(true);这句话在类初始化的时候加入

         第二步:重写相应的函数:

         ccTouchesBegan(CCSet *pTouches,CCEvent *pEvent);//触屏开始事件

         ccTouchesMoved(CCSet *pTouches,CCEvent *pEvent);//拖动事件

         ccTouchesEnded(CCSet *pTouches,CCEvent *pEvent);//触屏结束事件

         需要在哪个消息上作处理,就重写哪个函数就可以,具体的重写方法,会在后面介绍

         2.布景触屏(层触屏)

         需要增加一步,即重写registerWithTouchDispatcher()函数,重写的方法如下


0_13273863024jxj.gif.png


         剩下的就和1里一样

         首先在层初始化的时候(onEnter)加入setIsTouchEnabled(true);


0_132738630799L0.gif.png


         然后重写相应的函数


0_1327386313pD32.gif.png


         3 获得坐标

         重写函数时,需要获得坐标


0_1327386316lypP.gif.png


         在处理多点触摸时,首先获得集合中的第一个元素,然后获得屏幕上的坐标对应,最后对应openGL图标

         在处理单点触摸时只需要两步就可以


0_1327386321DZFJ.gif.png


         刚开始研究此引擎,如有错误之处,希望大家多多指正

         下一篇写一下test类里面的其他场景

0

主题

1

帖子

14

积分

新手上路

Rank: 1

积分
14
发表于 2013-7-22 01:30:15 | 显示全部楼层
谢谢楼主的分享
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2025-2-26 14:45

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表