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使用>>
分享到:
相关推荐
总结cocos2d-x开发中常用ui控件的使用方法
我已开始将cocos2dx-better的代码合并到了cocos2d-x v2中,新的项目叫,cocos2dx-better将不再维护。 更好的 Cocos2d-x 顾名思义,这个扩展将使 cocos2d-x 在许多方面变得更好,例如更好的 UI 控件、更好的实用程序...
Cocos官网上的教程,非常好。实现了Cocos2d-js自动绑定CocostudioUI控件和事件。所有资源来自网络,有侵权请及时提醒。
CCControlSwitch是开关按钮,关于控件使用时的一些配置,请参见文章:UI开发之控件类-CCControlButton。以下的演示中出现的key和value代表什么意思,知道的人说一声。 bool HelloWorld::init() { bool bRet = ...
主要介绍了Cocos2d-x UI开发之CCControlSlider控件类使用实例,本文代码中包含大量注释讲解了CCControlSlider控件类的使用,需要的朋友可以参考下
#QCEditorQCEditor是一个简单的cocos2d-x UI编辑器,基于cocos2d-x 3.16。 Qt和Cocos-x 都能跨平台,理论上该编辑器是能够跨平台的。名字是 Qt 和 Cocos2d-x 的首字母缩写。QCEditor的渲染使用的是cocos2d-x本身的...
对Cocos2D-x来说,从2.0版本开始提供了很多控件类来帮助我们更好地开发UI。 在HelloWorld.h中加入如下俩句代码 //需要包含如下的头文件和命名空间的申明 #include "cocos-ext.h" using namespace cocos2d::...
主要介绍了Cocos2d-x UI开发之CCControlPotentiometer控件类使用实例,本文代码中包含注释来讲解CCControlPotentiometer控件类的使用,需要的朋友可以参考下
主要介绍了Cocos2d-x UI开发之CCControlColourPicker控件类使用实例,本文代码中包含大量注释来讲解CCControlColourPicker控件类的使用,需要的朋友可以参考下
ScrollLayer 是一个用于 cocos2d-iphone 应用上的屏幕滚动组件
UI编辑器:支持目前Cocos2D-X的所有控件,同时支持多分辨率适配、碎图合并以及自定义UI。 动画编辑器:支持骨骼关键帧动画、序列帧动画,同时支持碎图合并、Flash动画直接导入等。 数据编辑器:把策划用的Excel数...
sz.UILoaderThis is a cocos2d-js ui load tool.快速使用var GameLayer = cc.Layer.extend({ ctor: function() {this._super();//"res/DemoLogin.ExportJson" 为cocostudio UI编辑器输出的UI配置文件,sz.uiloader....
UI编辑器:支持目前Cocos2D-X的所有控件,同时支持多分辨率适配、碎图合并以及自定义UI。 动画编辑器:支持骨骼关键帧动画、序列帧动画,同时支持碎图合并、Flash动画直接导入等。 数据编辑器:把策划用的Excel数...
是关于加载使用cocostudioGUI的示例,演示了如何加载cocostudio导出的UI工程,为在项目中为里面的控件添加事件响应,请使用的童鞋下载最新的cocos2d-x2.2.1版本
更新场景编辑器,适配新版cocos2d-x 2.1.4,支持cocos2d-x全部组件。 增加:场景编辑器解析 JsonReader。 增加:加载场景例子。 UI编辑器: 将UI,场景,动画三个编辑器的打开路径使用不同节点保存在配置文件中;...