cocos2d-x点击事件

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;
    }
}

相关文章

    本文实践自 RayWenderlich、Ali Hafizji 的文章《...
Cocos-code-ide使用入门学习地点:杭州滨江邮箱:appdevzw@1...
第一次開始用手游引擎挺激动!!!进入正题。下载资源1:从C...
    Cocos2d-x是一款强大的基于OpenGLES的跨平台游戏开发...
1.  来源 QuickV3sample项目中的2048样例游戏,以及最近《...
   Cocos2d-x3.x已经支持使用CMake来进行构建了,这里尝试...