转载,原文地址:http://blog.csdn.net/qq634416025/article/details/8739780
根据cocos2d-x游戏原理当home键或者锁屏键被按下,游戏处于后台状态就会调用AppDelegate.cpp里面的方法applicationDidEnterBackground()
其实按照这个方法的意思就可以知道到底是怎么回事了。所以我们就在这个方法内部写自己的东西。
首先,我说一下原理, 自己写了一个Dialog 模态对话框(这个可以搜到), 然后写了自己写了一个方法
301_21@
CCScene*PauseLayer::scene(CCRenderTexture*sqr,boolisFlip)
{
CCScene*scene=CCScene::create();
CCSizesize=CCDirector::sharedDirector()->getWinSize();
CCSprite*_spr=CCSprite::createWithTexture(sqr->getSprite()->getTexture());
_spr->setPosition(ccp(size.width/2,size.height/2));
_spr->setFlipY(isFlip);
_spr->setColor(ccGRAY);
scene->addChild(_spr);
PauseLayer*layer=PauseLayer::create();
scene->addChild(layer);
returnscene;
}
@H_传入一个CCrenderTexture 相当于一个正在运行的游戏的截图作为这个暂停对话框的背景 这样就看起来像是对话框在游戏界面之上,一般游戏当中都是这样子写的。
在applicationDidEnterBackground()里面这样写:
copy