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

cocos2d-x点击事件

发布时间:2020-12-14 18:54:18 所属栏目:百科 来源:网络整理
导读:xxx.h文件: Button * bt1; Button * bt2; void MyTouch1(cocos2d ::Ref * pSender,Widget ::TouchEventType type ); xxx.cpp文件: auto rootNode = CSLoader ::createNode ( "SelectServerScene.csb" ); cocos2d ::ui ::Layout * Panel_1 = (cocos2d ::ui

xxx.h文件:

Button* bt1;
    Button* bt2;

    void MyTouch1(cocos2d::Ref *pSender,Widget::TouchEventType type);

xxx.cpp文件:

auto rootNode = CSLoader::createNode("SelectServerScene.csb");
    cocos2d::ui::Layout* Panel_1 = (cocos2d::ui::Layout*)rootNode->getChildByName("Panel_1");

    bt1 = (Button*)Helper::seekWidgetByName(Panel_1,"Button_1");
    bt2 = (Button*)Helper::seekWidgetByName(Panel_1,"Button_2");

    bt1->addTouchEventListener(CC_CALLBACK_2(SelectServer::MyTouch1,this));
    bt2->addTouchEventListener(CC_CALLBACK_2(SelectServer::MyTouch1,this));

    bt1->setTag(1);
    bt2->setTag(2);

    addChild(rootNode);

//pSender谁申请事件就是谁
void SelectServer::MyTouch1(cocos2d::Ref * pSender,Widget::TouchEventType type)
{
    switch (type)
    {
    case cocos2d::ui::Widget::TouchEventType::BEGAN:
        //手指点中按钮,没有弹起
        CCLOG("BEGAN");
        break;
    case cocos2d::ui::Widget::TouchEventType::MOVED:
        //手指点中按钮,在上面滑动。
        CCLOG("MOVED");
        break;
    case cocos2d::ui::Widget::TouchEventType::ENDED:
        //手指点中按钮,松开。
        CCLOG("ENDED");
        if (((ImageView*)pSender)->getTag() == 1) {
            CCLOG("backButton");

        }

        if (((ImageView*)pSender)->getTag() == 2) {
            CCLOG("okButton");

        }

        break;
    case cocos2d::ui::Widget::TouchEventType::CANCELED:
        //手指点中按钮,手指滑动到按钮之外,然后再松开。
        CCLOG("CANCELED");
        break;
    default:
        break;
    }
}

(编辑:李大同)

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

    推荐文章
      热点阅读