USING_NS_CC;
//游戏相关
class AboutScene : public LayerColor
{
public:
static Scene* createScene();
virtual bool init();
CREATE_FUNC(AboutScene);
};
USING_NS_CC;
Scene* AboutScene::createScene()
{
//创建场景
Scene* scene = Scene::create();
//创建层
Layer* layer = AboutScene::create();
scene->addChild(layer);
return scene;
}
bool AboutScene::init()
{
//创建的层继承自LayerColor,在init方法中给LayerColor初始化颜色
if (!LayerColor::initWithColor(Color4B(137, 201, 151, 255)))
{
return false;
}
//场景大小
Size size(960, 640);
//背景图
Sprite* bk = Sprite::create("UI/ABOUT/about.png");
bk->setPosition(size.width / 2, size.height / 2);
this->addChild(bk);
//实现按任意键回到首界面的效果
//事件监听
auto event = EventListenerTouchOneByOne::create();
event->onTouchBegan = [](Touch* t, Event* e){
// popScene 释放当前场景,弹出栈顶场景,将其设置为运行场景,如果栈为空,则直接结束应用。
// pushScene是成对使用,可以达到从主界面进入关于界面,然后返回主界面的效果。
Director::getInstance()->popScene(); //退出AboutScene场景,返回HelloWorld场景
return true;
};
//事件派发
Director::getInstance()->getEventDispatcher()->addEventListenerWithSceneGraphPriority(event, this);
return true;
}