当前位置:编程学习 > wap >>

cocos2d-x-2.0新增加了几个UI控件

cocos2d-x-2.0新增加了几个UI控件,这里我介绍下常用的这几个UI控件(CCControlSlider、CCControlSwitch、CCControlColourPicker、ListView)的使用方法。

一、CCControlSlider
[cpp] 
// Slider 
 
CCControlSlider * slider = CCControlSlider::sliderWithFiles("sliderTrack2.png","sliderProgress2.png" ,"sliderThumb.png"); 
 
//添加回调函数 
 
slider->addTargetWithActionForControlEvents(this, menu_selector(HelloWorld::actionSlider),CCControlEventValueChanged); 
 
slider->setPosition(ccp(size.width*.8, size.height*.2) ); 
 
//silder的最小值和最大值 
 
slider->setMinimumValue(0.0f); 
 
slider->setMaximumValue(100.0f); 
 
//slider的当前值 
 
slider->setValue(50.0f); 
 
addChild(slider); 

回调函数:
[cpp]
void HelloWorld::actionSlider(CCObject* pSender){ 
 
CCControlSlider* pSliderCtl = (CCControlSlider*)pSender; 
 
ccTime scale; 
 
scale = pSliderCtl->getValue(); 
 
//slider的当前值 
 
CCLog("CCControlSlider value = %f",scale); 
 

二、CCControlSwitch
[cpp] 
//switch button 
 
CCControlSwitch *switchControl = CCControlSwitch::switchWithMaskSprite 
 

 
CCSprite::spriteWithFile("switch-mask.png"), 
 
CCSprite::spriteWithFile("switch-on.png"), 
 
CCSprite::spriteWithFile("switch-off.png"), 
 
CCSprite::spriteWithFile("switch-thumb.png"), 
 
CCLabelTTF::labelWithString("On", "Arial-BoldMT", 16), 
 
CCLabelTTF::labelWithString("Off", "Arial-BoldMT", 16) 
 
); 
 
switchControl->setPosition(ccp (size.width*.8, size.height*.35)); 
 
//回调函数 
 
switchControl->addTargetWithActionForControlEvents(this, menu_selector(HelloWorld::callbackSwitch), CCControlEventValueChanged); 
 
addChild(switchControl); 
 
callbackSwitch(switchControl); 

回调函数:
[cpp] 
void HelloWorld::callbackSwitch(CCObject* pSender){ 
 
CCControlSwitch* pSwitch = (CCControlSwitch*)pSender; 
 
if (pSwitch->getIsOn()){ 
 
CCLog("CCControlSwitch value = ON"); 
 
} else{ 
 
CCLog("CCControlSwitch value = OFF"); 
 

 

三、CCControlColourPicker
[cpp] 
//clolor picker 
 
CCControlColourPicker *colourPicker = CCControlColourPicker::colourPicker(); 
 
colourPicker->setColor(ccc3(37, 46, 252)); 
 
colourPicker->setPosition(ccp (size.width*.8, size.height*.7)); 
 
colourPicker->addTargetWithActionForControlEvents(this, menu_selector(HelloWorld::colourValueChanged), CCControlEventValueChanged); 
 
addChild(colourPicker); 

回调函数:
[cpp] 
void HelloWorld::colourValueChanged(CCObject *sender){ 
 
CCControlColourPicker* pPicker = (CCControlColourPicker*)sender; 
 
std::string str = CCString::stringWithFormat("#%02X%02X%02X",pPicker->getColorValue().r, pPicker->getColorValue().g, pPicker->getColorValue().b)->getCString(); 
 
CCLog("CCControlColourPicker value = %s",str.c_str()); 
 

作者:yanghuiliu

补充:移动开发 , 其他 ,
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,