CCEditBox、CCControlSwitch、CCControlSlider、CCControlColourPicker、CCControlButton等都是Cocos2d-x 2.x的最新UI扩展,通过#include "cocos-ext.h"导入
一、CCControlSwitch
1、创建方式
1)CCControlSwitch::create(cocos2d::CCSprite* maskSprite,cocos2d::CCSprite* onSprite。cocos2d::CCSprite* offSprite,cocos2d::CCSprite *thumbSprite)
參数1:Sprite对象作为掩饰底图
參数2:Sprite对象作为卡开状态图
參数3:Sprite对象作为关闭状态图
參数4:Sprite对象作为拨动开关的触发图,用于改变开关状态
2)CCControlSwitch::create(cocos2d::CCSprite* maskSprite,cocos2d::CCSprite* onSprite。cocos2d::CCSprite* offSprite,cocos2d::CCSprite *thumbSprite,cocos2d::CCLabelTTF* oneLabel。cocos2d::CCLabelTTF* offLabel)
參数1、2、3、4如上
參数5:CCLabelTTF对象,作为标明打开状态的文字
參数6:CCLabelTTF对象,作为标明关闭状态的文字
2、主要函数
1)void setOn(bool isOn)//设置开关状态
2)bool isOn(void)//获取开关状态
3)bool hasMove()//获取当前开关是否为用户手动拨动开关,获取的不是开关是否正在被用户拨动。而是开关终于状态是由用户手动拨动还是用户点击进行的状态更改
4)void setEnabled(bool enabled)//设置开关是否可被操作
二、CCControlSlider
1、创建方式
CCControlSlider::create(const char* bgFile,const char* progressFile。const char* thumFile)
參数1:滑动条的背景资源图名称
參数2:填充当前滑动的资源图名称
參数3:操作滑动条的资源图名称
2、经常使用函数
1)setValue(float val)//设置当前滑动条的值
2)float getValue()//获取当前滑动条的值
3)setMinimumValue(float val)//设置滑动条的最小滑动值
4)setMaximumValue(float val)//设置滑动条的最大值
5)addTargetWithActionForControlEvent(cocos2d::CCObject* target。SEL_menuHandler action。CCControlEvent controEvent)
參数1:目标对象
參数2:目标函数
參数3:监听动作事件类型。如按下、抬起、取消、控件值发生变化等
三、CCControlButtonbutton
1、创建方式
1)CCControlButton::create(cocos2d::extension::CCScale9Sprite* backgroundSprite)
2)CCControlButton::create(cocos2d::CCNode* label。cocos2d::extension::CCScale9Sprite* backgroundSprite)
2、经常使用函数
1)setBackgroundSpriteForState(CCScale9Sprite* sprite,CCControlState state)//设置当button响应了相应事件后的CCScaleSprite对象
參数1:新的CCScale9Sprite类型
參数2:CCControlState响应的事件
2)setTitleColorForState(ccColor3B color,CCControlState state)//设置当button响应了相应事件后文本的颜色
參数1:新的ccColor3B类型
參数2:响应的事件
3)setTitleForState(CCString* title,CCControlState state)//设置当button响应了相应事件后的文本,CCControlState是枚举变量
參数1:新的CCString类型
參数2:响应的事件
(1)CCControlEventTouchDown:按下
(2)CCControlEventTouchDragInside:在其内部拖动
(3)CCControlEventTouchDragOutSize:在其外部拖动
(4)CCControlEventTouchDragEnter:拖动进入其内部
(5)CCControlEventTouchDragExit:拖动离开其内部
(6)CCControlEventTouchUpInside:在其内部抬起
(7)CCControlEventTouchUpOutside:在其外部抬起
(8)CCControlEventTouchCancel:取消当前全部触点