1. //首先到cocos2d-x项目下的ios目录下。找到AppController.mm文件,在函数 didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 中加入例如以下函数:  [__glView setMultipleTouchEnabled:YES];
  2. bool HelloWorld::init()
  3. {
  4. if ( !CCLayer::init() )
  5. {
  6. return false;
  7. }
  8. //开启多触点监听务必调用此函数
  9. setTouchEnabled(true);
  10. CCSprite* sp1 = CCSprite::create("Icon.png");
  11. sp1->setPosition(ccp(150, 200));
  12. addChild(sp1, 0, 23);
  13. CCSprite* sp2 = CCSprite::create("Icon.png");
  14. sp2->setColor(ccc3(0, 255, 0));
  15. sp2->setPosition(ccp(150, 100));
  16. addChild(sp2, 0, 24);
  17. return true;
  18. }
  19. //第一次碰触
  20. void HelloWorld::ccTouchesBegan(cocos2d::CCSet *touches, cocos2d::CCEvent *event)
  21. {
  22. CCSetIterator inter = touches->begin();
  23. for(; inter != touches->end(); inter++)
  24. {
  25. CCTouch* touch = (CCTouch*)(*inter);
  26. CCPoint point = touch->getLocation();
  27. if(touch->getID() == 0) //第一个触点
  28. {
  29. CCSprite* sp1 = (CCSprite*)getChildByTag(23);
  30. sp1->setPosition(point);
  31. }else if(touch->getID() == 1)//第二个触点
  32. {
  33. CCSprite* sp2 = (CCSprite*)getChildByTag(24);
  34. sp2->setPosition(point);
  35. }
  36. }
  37. }
  38. //移动或拖拽
  39. void HelloWorld::ccTouchesMoved(cocos2d::CCSet *touches, cocos2d::CCEvent *event)
  40. {
  41. CCSetIterator inter = touches->begin();
  42. for(; inter != touches->end(); inter++)
  43. {
  44. CCTouch* touch = (CCTouch*) (*inter);
  45. CCPoint point = touch->getLocation();
  46. if(touch->getID() == 0)
  47. {
  48. CCSprite* sp1 = (CCSprite*)getChildByTag(23);
  49. sp1->setPosition(point);
  50. }else if(touch->getID() == 1)
  51. {
  52. CCSprite* sp2 = (CCSprite*)getChildByTag(24);
  53. sp2->setPosition(point);
  54. }
  55. }
  56. }
  57. //用户手指抬起
  58. void HelloWorld::ccTouchesEnded(cocos2d::CCSet *touches, cocos2d::CCEvent *event)
  59. {
  60. }
  61. //多触点的托付监听注冊放在onEnter的生命函数中会造成程序异常退出。默认都写在以下函数中。

  62. void HelloWorld::registerWithTouchDispatche()
  63. {
  64. CCDirector::sharedDirector()->getTouchDispatcher()->addStandardDelegate(this, 0);
  65. }
  66. //删除多触点的托付监听
  67. void HelloWorld::onExit()
  68. {
  69. CCDirector::sharedDirector()->getTouchDispatcher()->removeDelegate(this);
  70. //这句务必要写
  71. CCLayer::onExit();
  72. }

cocos2d-x 多触点监听的更多相关文章

  1. 学习ASP.NET Core, 怎能不了解请求处理管道[3]: 自定义一个服务器感受一下管道是如何监听、接收和响应请求的

    我们在<服务器在管道中的"龙头"地位>中对ASP.NET Core默认提供的具有跨平台能力的KestrelServer进行了介绍,为了让读者朋友们对管道中的服务器具有更 ...

  2. 【用户交互】APP没有退出前台但改变系统属性如何实时更新UI?监听系统广播,让用户交互更舒心~

    前日,一小伙伴问我一个问题,说它解决了半天都没解决这个问题,截图如下: 大概楼主理解如下: 如果在应用中有一个判断wifi的开关和一个当前音量大小的seekbar以及一个获取当前电量多少的按钮,想知道 ...

  3. Java中用得比较顺手的事件监听

    第一次听说监听是三年前,做一个webGIS的项目,当时对Listener的印象就是个"监视器",监视着界面的一举一动,一有动静就触发对应的响应. 一.概述 通过对界面的某一或某些操 ...

  4. Android开发-之监听button点击事件

    一.实现button点击事件的方法 实现button点击事件的监听方法有很多种,这里总结了常用的四种方法: 1.匿名内部类 2.外部类(独立类) 3.实现OnClickListener接口 4.添加X ...

  5. 【WCF】终结点的监听地址

    终结点主要作用是向客户端公开一些信息入口,通过这个入口,可以找到要调用的服务操作.通常,终结点会使用三个要素来表述,我记得老蒋(网名:Artech,在园子里可以找到他)在他有关WCF的书里,把这三要素 ...

  6. ASP.NET Core真实管道详解[2]:Server是如何完成针对请求的监听、接收与响应的【上】

    Server是ASP .NET Core管道的第一个节点,负责完整请求的监听和接收,最终对请求的响应同样也由它完成.Server是我们对所有实现了IServer接口的所有类型以及对应对象的统称,如下面 ...

  7. 4.JAVA之GUI编程事件监听机制

    事件监听机制的特点: 1.事件源 2.事件 3.监听器 4.事件处理 事件源:就是awt包或者swing包中的那些图形用户界面组件.(如:按钮) 事件:每一个事件源都有自己特点有的对应事件和共性事件. ...

  8. Android ScrollView监听滑动到顶部和底部的两种方式(你可能不知道的细节)

    Android ScrollView监听滑动到顶部和底部,虽然网上很多资料都有说,但是不全,而且有些细节没说清楚 使用场景: 1. 做一些复杂动画的时候,需要动态判断当前的ScrollView是否滚动 ...

  9. Android来电监听和去电监听

    我觉得写文章就得写得有用一些的,必须要有自己的思想,关于来电去电监听将按照下面三个问题展开 1.监听来电去电有什么用? 2.怎么监听,来电去电监听方式一样吗? 3.实战,有什么需要特别注意地方? 监听 ...

随机推荐

  1. VC++函数只被调用一次

    如何保证某个函数只被调用一次   一个函数caller会在其内部调用另外一个函数callee,现在的情况是,caller可能会在多个地方被多次调用,而你希望callee只在第一次被调用时被调用一次.一 ...

  2. PHP引用(&)的考察点

    引用的概念 在PHP中引用意味着用不同的名字访问同一个变量内容. 定义方式 使用 & 符号来表示 变量的引用 $a = 'ABC'; //开辟一块内存空间存储数据,$a指向该空间 $b = & ...

  3. OpenGL坐标系之间的转换 http://blog.csdn.net/sac761/article/details/52179585

    1. OpenGL 渲染管线 OpenGL渲染管线分为两大部分,模型观测变换(ModelView Transformation)和投影变换(Projection Transformation).做个比 ...

  4. HDU多校Round 6

    Solved:2 rank:452 I. Werewolf 没有铁人 找铁狼 如果一个环中只有一条狼人边那个人就是铁狼 说铁狼是好人的人也是铁狼 #include <bits/stdc++.h& ...

  5. iOS多媒体框架介绍

    媒体层 媒体层包含图形技术.音频技术和视频技术,这些技术相互结合就可为移动设备带来最好的多媒体体验,更重要的是,它们让创建外观音效俱佳的应用程序变得更加容易.您可以使用iOS的高级框架更快速地创建高级 ...

  6. 洛谷——P2158 [SDOI2008]仪仗队

    P2158 [SDOI2008]仪仗队 找规律大水题嘛,如果你做过P1170 兔八哥与猎人 这题得到的规律是$a,b,c,d$,若$gcd(a-b,c-d)==1$ 那么$a,b$就能看到$c,d$ ...

  7. Session共享实现方案调研

    1.背景 随 着互联网的日益壮大,网站的pv和uv成线性或者指数倍的增加.单服务器单数据库早已经不能满足实际需求.目前大多数大型网站的服务器都采用了分布式服务 集群的部署方式,所谓集群,就是让一组计算 ...

  8. django中配置允许跨域请求

    对于django 安装django-cors-headers,详情请看官方文档 pip install django-cors-headers 配置settings.py文件 a.在INSTALLED ...

  9. [bzoj3106][cqoi2013][棋盘游戏] (对抗搜索+博弈论)

    Description 一个n*n(n>=2)棋盘上有黑白棋子各一枚.游戏者A和B轮流移动棋子,A先走. l         A的移动规则:只能移动白棋子.可以往上下左右四个方向之一移动一格. ...

  10. [bzoj1004][HNOI2008][Cards] (置换群+Burnside引理+动态规划)

    Description 小春现在很清闲,面对书桌上的N张牌,他决定给每张染色,目前小春只有3种颜色:红色,蓝色,绿色.他询问Sun有多少种染色方案,Sun很快就给出了答案.进一步,小春要求染出Sr张红 ...