zoukankan      html  css  js  c++  java
  • Cocos2d-x设置吞没单击属性来避免精灵重叠被点击后的事件续传

    代码如下:

    Size visibleSize = Director::getInstance()->getVisibleSize();
    
        /* create two sprites which have overlapped parts */
        Sprite* sp1 = Sprite::create("sprite1.png");
        sp1->setPosition(Point(visibleSize.width * 0.5f, visibleSize.height * 0.5f));
        this->addChild(sp1);
    
        Sprite* sp2 = Sprite::create("sprite2.png");
        sp2->setPosition(Point(visibleSize.width * 0.5f, visibleSize.height * 0.5f));
        this->addChild(sp2);
    
        auto listener = EventListenerTouchOneByOne::create();
        listener->setSwallowTouches(true);
        listener->onTouchBegan = [](Touch* touch, Event* event){
            /* get the target bind by the touch event listener */
            auto target = static_cast<Sprite*>(event->getCurrentTarget());
    
            Point pos = Director::getInstance()->convertToGL(touch->getLocationInView());
    
            /* judge if the touch position inside the bounding box of sprite */
            if (target->getBoundingBox().containsPoint(pos))
            {
                /* set the opacity of the sprite */
                target->setOpacity(100);
    
                return true;
            }
            
            return false;
        };
        listener->onTouchEnded = [](Touch* touch, Event* event){
            /* restore the opacity of the sprite */
            auto target = static_cast<Sprite*>(event->getCurrentTarget());
            target->setOpacity(255);
        };
      
        /* register the touch event listener by event dispatcher to bind sprite1 */
        _eventDispatcher->addEventListenerWithSceneGraphPriority(listener, sp1);
    
        /* register the touch event listener by event dispatcher to bind sprite2 */
        _eventDispatcher->addEventListenerWithSceneGraphPriority(listener->clone(), sp2);
  • 相关阅读:
    正则表达式
    Ajax跨域问题---jsonp
    Ajax
    字符串总结
    js 字符串加密
    jsDate()
    HDU 5430 Reflect
    HDU 5429 Geometric Progression
    HDU 5428 The Factor
    POJ 2485 Highways
  • 原文地址:https://www.cnblogs.com/davidgu/p/4515432.html
Copyright © 2011-2022 走看看