CCLayers.cpp
#include "CLayers.h"
CCScene* CCLayers::scene(){
CCScene *s = CCScene::create();
CCLayers *layer = CCLayers::create();
s->addChild(layer);
return s;
}
bool CCLayers::init(){
CCLayer::init();
CCSize size = CCDirector::sharedDirector()->getWinSize();
CCLayerColor *layerColor = CCLayerColor::create(ccc4(255, 0, 0, 255), size.width / 2, size.height / 2);
//addChild(layerColor);
//渐变
//ccp(1,1) 表示渐变是从哪里开始到哪里结束(左下角到右上角)
CCLayerGradient *layergradient = CCLayerGradient::create(ccc4(0, 255, 0, 255), ccc4(255, 0, 0, 125),ccp(1,1));
//addChild(layergradient);
//不定参数
//多层布景层类
CCLayerMultiplex *layermultiplex = CCLayerMultiplex::create(layerColor, layergradient,NULL);
layermultiplex->setTag(1);
_id = 0;
_layer = layermultiplex;
//切换
layermultiplex->switchTo(1);
addChild(layermultiplex);
setTouchEnabled(true);
return true;
}
void CCLayers::ccTouchesBegan(CCSet*, CCEvent*){
_id = 1 - _id;
_layer->switchTo(_id);
CCNode *node=getChildByTag(1);
}
CCLayers.h
#ifndef __CCLayers_H__
#define __CCLayers_H__
#include"cocos2d.h"
USING_NS_CC;
class CCLayers :public CCLayer
{
public:
bool init();
static CCScene *scene();
CREATE_FUNC(CCLayers);
void ccTouchesBegan(CCSet*,CCEvent*);
CCLayerMultiplex *_layer;
int _id;
};
#endif