暂停按钮采用MenuItemImage的实现

来源:互联网 发布:linux防御cc攻击 编辑:程序博客网 时间:2024/06/02 02:30

MenuItemImage 没有按钮的 button->setPressedActionEnabled(true);的方法

在这里,我们在调用函数menuCallback 里缩小尺寸


#include "cocos2d.h"

#include "ui/CocosGUI.h"//******
using namespace cocos2d::ui;

USING_NS_CC;

.h头文件:

//暂停按钮
MenuItemImage *m_pauseItem;
//暂停label
Label *m_pauseLabel;

void menuCallback(Ref * r);


.cpp文件:

//暂停按钮
m_pauseItem = MenuItemImage::create(
"pauseButton.png", //png.jpg等图片格式都是可以的  
"pauseButton.png",
this,
menu_selector(UIContainer::menuCallback));
m_pauseItem->setScale(0.4);
m_pauseItem->setPosition(Vec2(visibleSize.width*0.8 / 2, visibleSize.height*0.9 / 2));
auto menu = Menu::create(m_pauseItem, NULL);
menu->setPosition(Vec2(0,0));
addChild(menu);


//暂停Label
m_pauseLabel = Label::createWithTTF(" ", "fonts/Marker Felt.ttf", 80);
m_pauseLabel->setPosition(Vec2(0,0));
addChild(m_pauseLabel);



void UIContainer::menuCallback(Ref * r)
{
static bool isPause = false;


if (!isPause)
{//当前处于非暂停状态
log("第一次点击");
isPause = true;
m_pauseLabel->setString("PAUSE");
GameControl::getInstance()->gamePause();
m_pauseItem->setScale(0.35);
}
else
{//当前处于暂停状态
isPause = false;
log("第二次点击");
m_pauseLabel->setString("");
GameControl::getInstance()->gameResume();
m_pauseItem->setScale(0.4);


}
}

0 0
原创粉丝点击