一般使用CCLabelTTF
四步驟:
//1.初始化 參數(shù)1:字體內(nèi)容 參數(shù)2:字體格式 參數(shù)3:字體大小
CCLabelTTF* pLabel=CCLabelTTF:create("Hello Cocos2d-x","Arial",24);
//2.檢測CC_BREAK_IF();
CC_BREAK_IF(!pLabel);
//3.設置坐標點
CCSize size=CCDirector::sharedDirector()->getWinSize();
pLabel->setPosition(ccp(size.width/2,size.height-50));
//4.加入當前圖層
this->addChild(pLabel,1);
繪制一張圖片
一般使用CCSprite
四步驟:
//1.初始化
CCSprite* pSprite=CCSprite::create("HelloWorld.png");
//2.檢測CC_BREAK_IF();
CC_BREAK_IF(!pSprite);
//3.設置坐標點
CCSize size=CCDirector::sharedDirector()->getWinSize();
pSprite->setPosition(ccp(size.width/2,size.height/2));
//4.加入當前圖層
this->addChild(pSprite,1);
創(chuàng)建按鈕
CCMenu添加CCMenultem的子類(Menu可以統(tǒng)一管理,方便設置布局);
文本按鈕 2種方式
1.CClabelTTF+CCMenultmeLabel 2.CCMenultemFont
圖片按鈕
CCMenultemlmage
CCLabelTTF+CCMenultmeLabel
//使用CCLabeTTF和CCMenultemLabel創(chuàng)建一個文本按鈕
CCLabelTTF* pBtn=CCLabelTTF::create("LabelButton","Arial",20);
//檢測
CC_BREAK_IF(!pLabel);
//設置坐標點
//通過pBtn生成一個CCMenultemLabel
CCMenultemLabel* pltemLabel=CCMenultemLabel::create(pBtn);
CC_BREAK_IF(!pltemLabel);
pltemLabel->setPosition(ccp(100,100));
//添加到Menu層
CCMenu* pMenu=CCMenu::create(plitemLable,null);
CC_BREAK_IF(!pMenu);
pMenu->setPosition(CCPointZero);
this->addChild(pMenu,1);
CCMenuItemFont文字按鈕
//使用CCMenuItemFont創(chuàng)建一個文本按鈕
//第一個參數(shù)是字符串 第二個參數(shù) 圖層,this代表當前圖層,第三個參數(shù)是一個menu也是一個監(jiān)聽事件
CCMenuItemFont* pltemFont=CCMenuItemFont::create("FontButton",this,NULL);
//檢測
CC_BREAK_IF(!pItemFont);
//設置坐標
pItemFont->setPosition(300,300);
//添加到Menu層
CCMenu *pMenu=CCMenu::create(pItemFont,null);
CC_BREAK_IF(!pMenu);
pMenu->setPosition(CCPointZero);
this->addChild(pMenu,1);
CCMenuItemImage圖片按鈕
//使用圖片生成一個按鈕 第一個參數(shù)按鈕未被點擊時的圖片 第二個參數(shù)按鈕被點擊的圖片 第三個參數(shù)添加的圖層 第四個參數(shù)被點擊后的響應事件
CCMenuItemImage* pItemImage=CCMenuItemImage::create("CloseNormal.png","CloseSelected.png",this,NULL);
//檢測
CC_BREAK_IF(!pItemImage);
//設置坐標
pItemImage->setPosition(300,200);
//添加到Menu層
CCMenu* pMenu=CCMenu::create(pItemFont,null);
CC_BREAK_IF(!pMenu);
pMenu->setPosition(CCPointZero);
this->addChild(pMenu,1);
如何生成一個動畫
圖片放入項目
1.生成紋理
CCTexture2D* texture2d=CCTextureCache::sharedTextureCache()->addImage("圖片路徑");
2.截取每幀
CCSpriteFrame* frame=CCSpriteFrame::creat(t,CCRectMake(起點x,起點y,結(jié)束x,結(jié)束y));
3.所有幀放入
CCArray* array=CCArray::creat(總幀數(shù));
4.生成動畫CCAnimation
5.初始化CCSprite并添加到圖層
6.使用CCAnimation生成一個CCAnimate(CCAnimation是動畫 CCAnimate是動作);
7.CCSprite綁定CCAnimate
上代碼-這里說明一下2.0跟2.1的create有差別所以請注意
2.0的代碼如下
//讀取2D紋理
CCTexture2D* pTexture=CCTextureCache::sharedTextureCache()->addImage("gril.png");
//創(chuàng)建第一幀
CCSpriteFrame* frame0=CCSpriteFrame::create(pTexture,CCRectMake(32*0,48*0,32,48);
//創(chuàng)建第二幀
CCSpriteFrame* frame1=CCSpriteFrame::create(pTexture,CCRectMake(32*1,48*0,32,48);
//創(chuàng)建第三幀
CCSpriteFrame* frame2=CCSpriteFrame::create(pTexture,CCRectMake(32*2,48*0,32,48);
//創(chuàng)建第四幀
CCSpriteFrame* frame3=CCSpriteFrame::create(pTexture,CCRectMake(32*3,48*0,32,48);
CCArray* pArray=CCArray::create(4);
pArray->addObject(frame0);
pArray->addObject(frame1);
pArray->addObject(frame2);
pArray->addObject(frame3);
//創(chuàng)建動畫
CCAnimation* animation=CCAnimation::create(pArray,0.5f);
CC_BREAK_IF(!animation);
//初始化并設置一個Sprite
CCSprite* girlSprite=CCSprite::create(frame0);
CC_BREAK_IF(!girlSprite);
//設置坐標點
girlSprite->setPosition(ccp(size.width/2,size.height/2+100));
this->addChild(girlSprite,2);
//使用animation生成animate
CCAnimate* animate=CCAnimate::actionWithAnimation(animation);
CC_BREAK_IF(!animate);
girlSprite->runAction(CCRepeatForever::create(animate));
2.1.1版本
//讀取2D紋理