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

猴子原创,欢迎转载。转载请注明:转载自Cocos2D开发网--Cocos2Dev.com,谢谢!

原文地址:http://www.cocos2dev.com/?p=252

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


一、CCControlSlider

// 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);

回调函数:

void HelloWorld::actionSlider(CCObject* pSender){

CCControlSlider* pSliderCtl = (CCControlSlider*)pSender;

ccTime scale;

scale = pSliderCtl->getValue();

//slider的当前值

CCLog("CCControlSlider value = %f",scale);

}

二、CCControlSwitch

//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);

回调函数:

void HelloWorld::callbackSwitch(CCObject* pSender){

CCControlSwitch* pSwitch = (CCControlSwitch*)pSender;

if (pSwitch->getIsOn()){

CCLog("CCControlSwitch value = ON");

} else{

CCLog("CCControlSwitch value = OFF");

}

}

三、CCControlColourPicker

//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);

回调函数:

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());

}

四、ListView

有点长,单独开一个页面,点击查看ListView使用>>


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值