Cocos2d-x学习笔记(12)(CCControlSwitch开关、CCControlSlide
CCEditBox、CCControlSwitch、CCControlSlider、CCControlColourPicker、CCControlButton等都是Cocos2d-x 2.x的最新UI扩展,通过#include cocos-ext.h导入 一、CCControlSwitch 1、创建方式 1)CCControlSwitch::create(cocos2d::CCSprite* maskSprite
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:监听动作事件类型,如按下、抬起、取消、控件值发生变化等
三、CCControlButton按钮
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)//设置当按钮响应了对应事件后的CCScaleSprite对象
参数1:新的CCScale9Sprite类型
参数2:CCControlState响应的事件
2)setTitleColorForState(ccColor3B color,CCControlState state)//设置当按钮响应了对应事件后文本的颜色
参数1:新的ccColor3B类型
参数2:响应的事件
3)setTitleForState(CCString* title,CCControlState state)//设置当按钮响应了对应事件后的文本,CCControlState是枚举变量
参数1:新的CCString类型
参数2:响应的事件
(1)CCControlEventTouchDown:按下
(2)CCControlEventTouchDragInside:在其内部拖动
(3)CCControlEventTouchDragOutSize:在其外部拖动
(4)CCControlEventTouchDragEnter:拖动进入其内部
(5)CCControlEventTouchDragExit:拖动离开其内部
(6)CCControlEventTouchUpInside:在其内部抬起
(7)CCControlEventTouchUpOutside:在其外部抬起
(8)CCControlEventTouchCancel:取消当前所有触点