Cocos2d-x UI開辟之CCControlButton控件類實例。本站提示廣大學習愛好者:(Cocos2d-x UI開辟之CCControlButton控件類實例)文章只能為提供參考,不一定能成為您想要的結果。以下是Cocos2d-x UI開辟之CCControlButton控件類實例正文
在運用的開辟中,不管是Android操作體系照樣iOS操作體系,其開辟框架都供給了控件,包含按鍵、拖動滑塊等,如許進步了開辟效力。關於游戲的開辟,UI的開辟異樣須要控件來進步開辟效力。對Cocos2D-x來講,從2.0版本開端供給了許多控件類來贊助我們更好地開辟UI。
在HelloWorld.h中參加以下倆句代碼
//須要包括以下的頭文件和定名空間的聲名 #include "cocos-ext.h" using namespace cocos2d::extension;
同時參加button事宜呼應的函數
void touchDown(CCObject * pSender,CCControlEvent evt);
以下是HelloWorld.cpp中的init函數
//在附加包括目次中新增一項E:\cocos2d-x-2.2\cocos2d-x-2.2\extensions //在設置裝備擺設屬性->銜接器->輸出的附加依附項中添加libExtensions.lib //經由上述步調才可使用控件類 bool HelloWorld::init() { bool bRet = false; do { CC_BREAK_IF(! CCLayer::init()); //創立文本類,是顯示在button中的文本 CCLabelTTF * title = CCLabelTTF::create("music","Arial",32); //可以設置一下title的色彩 title->setColor(ccc3(255,0,0)); //創立一張九妹圖片(一張支撐拉伸的圖片,拉伸可以免圖片掉真,可以節儉空間) //按鈕處於正常狀況下的圖片 CCScale9Sprite * buttonNormal = CCScale9Sprite::create("buttonBackground.png"); //控件類CCControlButton,第一個參數就是按鈕顯示的文本,第二個參數就是按鈕正常狀況下的圖片 //button的年夜小和title的年夜小是雷同的,這就是為何選九妹圖片的緣由了,會跟著title的年夜小主動拉伸 CCControlButton * button = CCControlButton::create(title,buttonNormal); //創立一張按鈕按下的配景圖片 CCScale9Sprite * spriteSelected = CCScale9Sprite::create("buttonHighlighted.png"); //設置button按下時的配景圖片,第二個參數是一個宏,f12檢查其他的宏 button->setBackgroundSpriteForState(spriteSelected,CCControlStateSelected); //修正title的色彩 button->setTitleColorForState(ccc3(0,255,255), CCControlStateHighlighted); button->setPosition(ccp(240,160)); this->addChild(button); //為按鈕添加事宜 button->addTargetWithActionForControlEvents(this,cccontrol_selector(HelloWorld::touchDown), CCControlEventTouchDown); bRet = true; } while (0); return bRet; }
關於事宜呼應函數的完成
void HelloWorld::touchDown(CCObject * pSender,CCControlEvent evt) { CCLog("touch down!"); }