zoukankan      html  css  js  c++  java
  • cocos2d-x之事件传递(onTouchBegan的返回值的作用)

    cocos2d-x之事件传递(onTouchBegan的返回值的作用)

    只有当onTouchBegan的返回值是true时才执行后面的两个触摸事件

     1 //onTouchBegan表示开始触摸的事件
     2     listener->onTouchBegan = [](Touch *t, Event *e){
     3         //通过事件e来获取到当前的事件的目标,然后获取到目标的边界区域
     4         //e->getCurrentTarget()->getBoundingBox()
     5         //然后判断是否包括一个点,就是触摸点:.containsPoint()
     6         //获取到触摸的位置t->getLocation()
     7         //此时事件的目标即node的边界区域包括了当前的触摸点,说明所触摸的就是当前的对象
     8         if (e->getCurrentTarget()->getBoundingBox().containsPoint(t->getLocation())){
     9             log("onTouchBegan!");
    10         }
    11         
    12         
    13         //只有当onTouchBegan的返回值是true时才执行后面的两个触摸事件
    14         //return false;
    15         return true;
    16     };
    17     //触摸移动事件监听器,当触摸移动的时候执行内部代码
    18     listener->onTouchMoved = [](Touch *t, Event *e){
    19         log("OnTouchMoved>>");
    20     };
    21     //触摸结束事件监听器,当触摸结束的时候执行内部代码
    22     listener->onTouchEnded = [](Touch *t, Event *e){
    23         log("OnTouchEnd----");
    24     };
    25     
    26     
    27     
    28     //getEventDispatcher获取事件的派发器,
    29     //addEventListenerWithSceneGraphPriority(事件, 节点);添加事件监听器
    30     Director::getInstance()->getEventDispatcher()->addEventListenerWithSceneGraphPriority(listener, label);
  • 相关阅读:
    记忆化搜索 E
    网络流 O
    线段树 B数据结构 牛客练习赛28
    N
    线段树 G
    K
    F
    补一下昨天的博客 J
    selenium-1-python
    selenium入门知识
  • 原文地址:https://www.cnblogs.com/dudu580231/p/4375230.html
Copyright © 2011-2022 走看看