Cocos2d-x v3.3 Buttonクラス

Buttonの使い方を記載
GameScene.h
class GameScene : public cocos2d::Layer
{
    // ...
    void buttonTouchEventListener(cocos2d::Ref*, cocos2d::ui::Widget::TouchEventType);
};
GameScene.cpp

ボタン生成

    ui::Button* button = ui::Button::create();
    button->loadTextures(“normal.png”, “select.png”, “disabled.png”);
    button->setPosition(Point(100, 100));
    button->setTouchEnabled(true);
    button->addTouchEventListener(CC_CALLBACK_2(GameScene::buttonTouchEventListener, this));
    this->addChild(button);
イベントリスナー
void GameScene:: buttonTouchEventListener(Ref* pSender, ui::Widget::TouchEventType type)
{
    switch (type) {
    case ui::Widget::TouchEventType::BEGAN:
        break;
    case ui::Widget::TouchEventType::MOVED:
        break;
    case ui::Widget::TouchEventType::CANCELED:
        break;
    case ui::Widget::TouchEventType::ENDED:
        break;
    default:
        break;
    }
}
v3.3以降で button->setZoomScale() にてボタンをタップした時の
 拡大アニメーション倍率を指定出来るようになった。
 (ボタン倍率を等倍にしたい場合には0を指定する)