cocos2dx实现双击

桌面双击

这种方法只需要使用到一个bool变量表征是否touch。

  1. bool clicked;  

初始化为:

  1. clicked = false;  

处理的代码如下:

  1. void  HelloWorld::ccTouchesBegan(CCSet* touches, CCEvent* event)  
  2. {  
  3.     if (clicked) {  
  4.         clicked = false;  
  5.         CCLog("double click");  
  6.     }  
  7.     else  
  8.     {  
  9.         //延时0.25s执行(注意在这0.25s的延时过程中clicked已经为true),  
  10.         //如果在这个过程中再次click,那么就执行上面的双击事件处理了  
  11.         //否则,那么就执行下面的回调函数了,处理单击事件  
  12.         scheduleOnce(schedule_selector(HelloWorld::ff), 0.25f);  
  13.         clicked = true;  
  14.     }  
  15. }  
  16.   
  17. //在回调函数中处理单击事件  
  18. void HelloWorld::ff(float tt)  
  19. {  
  20.     if (clicked) {  
  21.         clicked = false;  
  22.         CCLog("single click");  
  23.     }  
  24. }  
这个方法利用的是双击是两次点击时间间隔250ms到300ms的事实为依据的
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值