加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

cocos2dx 触摸事件

发布时间:2020-12-14 16:56:21 所属栏目:百科 来源:网络整理
导读:单点触摸: auto label = LabelTTF ::create( "Label" , "Courier" , 30 ); label-setPosition(visibleSize / 2 ); this -addChild(label); auto listener = EventListenerTouchOneByOne ::create(); /*创建事件侦听*/ listener-onTouchBegan = [](Touch *to

单点触摸:

auto label = LabelTTF::create("Label","Courier",30);

    label->setPosition(visibleSize / 2);

    this->addChild(label);

    auto listener = EventListenerTouchOneByOne::create(); /*创建事件侦听*/

    listener->onTouchBegan = [](Touch *touch,Event* event){ /*开始点击触发回调函数*/

        if (event->getCurrentTarget()->getBoundingBox().containsPoint( /*触摸点是否在目标范围*/ touch->getLocation())){ CCLOG("OK"); } return false; /*事件是否传递 false不传递,true传递*/ }; /*在场景中注册事件*/ Director::getInstance()->getEventDispatcher()-> 
        addEventListenerWithSceneGraphPriority(listener,label);

多点触摸:

auto listener = EventListenerTouchAllAtOnce::create();

    listener->onTouchesBegan = [](std::vector<Touch*> touchs,Event* event){
        CCLOG("Touchs Began!");
    };

    listener->onTouchesMoved = [](std::vector<Touch*> touchs,Event* event){
        CCLOG("Touchs Move: %d",touchs.size());
    };


    Director::getInstance()->getEventDispatcher()->addEventListenerWithSceneGraphPriority(listener,this);

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读