zoukankan      html  css  js  c++  java
  • cocos2d-x之触摸目标的判断

    cocos2d-x之触摸目标的判断

    需要在触摸事件的内部添加判断目标的代码

     1 //EventListenerTouchOneByOne表示一个接一个的触发,每次触摸只能监听到一个触摸点
     2     auto listener = EventListenerTouchOneByOne::create();
     3     //onTouchBegan表示开始触摸的事件
     4     listener->onTouchBegan = [](Touch *t, Event *e){
     5         //通过事件e来获取到当前的事件的目标,然后获取到目标的边界区域
     6         //e->getCurrentTarget()->getBoundingBox()
     7         //然后判断是否包括一个点,就是触摸点:.containsPoint()
     8         //获取到触摸的位置t->getLocation()
     9         //此时事件的目标即node的边界区域包括了当前的触摸点,说明所触摸的就是当前的对象
    10         if (e->getCurrentTarget()->getBoundingBox().containsPoint(t->getLocation())){
    11             log("onTouchBegan!");
    12         }
    13         
    14         return false;
    15     };
    16     //getEventDispatcher获取事件的派发器,
    17     //addEventListenerWithSceneGraphPriority(事件, 节点);添加事件监听器
    18     Director::getInstance()->getEventDispatcher()->addEventListenerWithSceneGraphPriority(listener, label);
  • 相关阅读:
    HTML
    JavaScript-DOM
    Visual Studio Usage
    Char 05 使用提供程序
    Char 04 运行命令
    Char 03 使用帮助系统
    char 02 初识 Powershell
    Char 01 PowerShell
    Linux Nginx
    Linux SSLH
  • 原文地址:https://www.cnblogs.com/dudu580231/p/4375222.html
Copyright © 2011-2022 走看看