cocos代码研究(15)Widget子类CheckBox学习笔记
理论基础
复选框是一种特定类型的“两状态”按钮,可以处于“选中”和“未选中状态”。继承自AbstractCheckButton。注 AbstractCheckButton继承自Widget类。
代码部分
Public属性类型
enum EventType
复选框事件类型,目前只有“选中”和“未选中”两种事件。
ccCheckBoxCallback
一个回调函数,它将在某个复选框事件触发后被调用。
Public成员函数
void setSelectedState (bool selected)
变更复选框选中
bool getSelectedState () const
查询复选框是否被选中。
bool isSelected () const
查询是否选中复选框。
void setSelected (bool selected)
修改复选框的状态 设置True会使复选框变为“选中状态”,否则传False会使复选框变为“未选中状态”
void addEventListenerCheckBox (Ref *target, SEL_SelectedStateEvent selector)
注册一个回调函数,它会在复选框的选择事件发生时被调用。
void addEventListener (const ccCheckBoxCallback &callback)
注册一个回调函数,它将在复选框被选中或者取消选中时被调用。
virtual void onTouchEnded (Touch *touch, Event *unusedEvent) override
触摸事件结束时的回调函数。
void loadTextures (const std::string &background, //背景普通状态图片的名字。
const std::string &backgroundSelected, //背景选择状态图片的名字。
const std::string &cross, //勾选选中状态图片的名字。
const std::string &backgroundDisabled, //背景禁用状态图片名字。
const std::string &frontCrossDisabled, //勾选禁用状态图片名字
TextureResType texType=TextureResType::LOCAL)
加载所有纹理并初始化一个复选框。
void loadTextureBackGround (const std::string &backGround, //背景普通状态图片的名字。
TextureResType type=TextureResType::LOCAL)
加载背景普通状态纹理
void loadTextureBackGroundSelected (const std::string &backGroundSelected, //背景选中状态纹理图片的名字。
TextureResType texType=TextureResType::LOCAL)
加载背景选中状态纹理的图片
void loadTextureFrontCross (const std::string &crossTextureName, //勾选选中状态图片的名字。
TextureResType texType=TextureResType::LOCAL)
加载勾选选中状态的纹理图片
void loadTextureBackGroundDisabled (const std::string &backGroundDisabled, //背景禁用状态纹理的图片名称
TextureResType texType=TextureResType::LOCAL)
加载背景禁用状态纹理的图片
void loadTextureFrontCrossDisabled (const std::string &frontCrossDisabled, //勾选禁用状态图片名字。
TextureResType texType=TextureResType::LOCAL)
加载勾选禁用状态的纹理图片
void setZoomScale (float scale)
当用户按下复选框时,按钮将会缩放到一个比例 最后复选框的缩放值等于(复选框原尺寸+ _zoomScale)
float getZoomScale () const
返回一个缩放比例
Sprite * getRendererBackground () const
返回背景普通状态的渲染节点
Sprite * getRendererBackgroundSelected () const
返回背景选择状态的渲染节点
Sprite * getRendererFrontCross () const
返回前景普通状态的渲染节点
实例:
// Create the checkbox
CheckBox* checkBox = CheckBox::create("cocosui/check_box_normal.png",
"cocosui/check_box_normal_press.png",
"cocosui/check_box_active.png",
"cocosui/check_box_normal_disable.png",
"cocosui/check_box_active_disable.png");
checkBox->setPosition(Vec2(widgetSize.width / 2.0f, widgetSize.height / 2.0f)); checkBox->addEventListener(CC_CALLBACK_2(UICheckBoxTest::selectedEvent, this));
_uiLayer->addChild(checkBox);
// Create the checkbox
CheckBox* checkBox2 = CheckBox::create("cocosui/check_box_normal.png",
"cocosui/check_box_active.png");
checkBox2->setPosition(Vec2(widgetSize.width / 2.0f - , widgetSize.height / 2.0f));
checkBox2->ignoreContentAdaptWithSize(false);
checkBox2->setZoomScale(0.5);
checkBox2->setContentSize(Size(,));
checkBox2->setName("bigCheckBox");
_uiLayer->addChild(checkBox2);
cocos代码研究(15)Widget子类CheckBox学习笔记的更多相关文章
- cocos代码研究(1)Node学习笔记
理论部分 Node类继承自Ref类,是cocos框架中基础底层的一个封装类,与画面渲染相关的类一般都是继承自该类,例如Scene,Layer,Sprite,Sprite3D,Label,SpriteB ...
- cocos代码研究(5)Action学习笔记
理论部分 Action类也是cocos核心基础类之一,在游戏中起着非常重要的作用,继承自Ref,被 FiniteTimeAction(有限时间动作), Follow , 以及 Speed 继承. 有限 ...
- cocos代码研究(2)Label学习笔记
理论部分 Label类继承自Node类,中文翻译文字与字体,通常在应用开发中为模块作为提示和描述的作用,主要有3中不同的创建方式. 1.通过ttf字体包创建,通过指定本地已有的ttf格式的字体文件,创 ...
- cocos代码研究(1)sprite学习笔记
各种方法创建Sprite和Animate //图片创建法 参数一:图片资源路径 参数二:Rect选区 auto sprite = Sprite::create(, )); addChild(sprit ...
- cocos代码研究(2)Layer学习笔记
auto layer = Layer::create(); /*************华丽分割线*************/ auto layer = LayerColor::create(Colo ...
- cocos代码研究(17)Widget子类RadioButtonGroup学习笔记
理论基础 RadioButtonGroup可以把指定的单选按钮组织起来, 形成一个组, 使它们彼此交互. 在一个RadioButtonGroup, 有且只有一个或者没有RadioButton可以处于被 ...
- cocos代码研究(16)Widget子类RadioButton学习笔记
理论基础 RadioButton是一种特定类型的两状态按钮,它与复选框相似.它可以 和RadioButtonGroup一起使用,形成一个"组".继承自AbstractCheckBu ...
- cocos代码研究(14)Widget子类Button学习笔记
理论基础 表示一个按钮组件. 按钮可以被按下,或者点击, 并且在按下或者点击之后,可以由用户指定一个动作来执行,继承自 Widget. 代码部分 static Button * create ()创建 ...
- cocos代码研究(13)Widget子类EditBox学习笔记
理论基础 一个用来输入文本的类,继承自 Widget , 以及 IMEDelegate. 代码部分 Public枚举类型 enum KeyboardReturnType键盘的返回键类型. enum I ...
随机推荐
- 工作流JBPM_day01:4-管理流程定义
工作流JBPM_day01:4-管理流程定义 管理流程(流程定义) 部署(添加) 查询 删除 查看流程图(xxx.png) -- 修改 --> 没有真正的修改,而是使用“再次部署+使用最新版本启 ...
- ios 6以后,UILabel全属性
一.初始化 1 UILabel *myLabel = [[UILabel alloc] initWithFrame:CGRectMake(40, 40, 120, 44)]; 2 3 [s ...
- 给IT同学推荐这15个不错的学习网站,收藏起来慢慢看吧
1.学堂在线:http://www.xuetangx.com 目前,学堂在线运行了包括包括清华大学.北京大学.复旦大学.斯坦福大学.麻省理工学院.加州大学伯克利分校等国内外几十所顶尖高校的优质课程.在 ...
- 浅谈ITIL
本节内容 浅谈ITIL CMDB介绍 Django自定义用户认证 Restful 规范 资产管理功能开发 浅谈ITIL TIL即IT基础架构库(Information Technology Infra ...
- Thinkphp 修改U方法按路由规则生成url
tp开户路由后,使用U方法是不会按路由规则生成url的,一般我们是要手动修改模版,把里面的U方法去掉,手动修改链接,如果是已经写好的程序,后期才添加路由,修改起链接就太麻烦了 今天无聊就修改了一下U方 ...
- 动易CMS漏洞收集
动易SiteWeaver6.8短消息0day跨站漏洞 user用户登陆,默认账号密码 admin/admin888 短消息代码模式下编辑,预览 <img src="../Skin/bl ...
- Serlvet学习笔记之一 ——实现servlet的3种方法
1.配置环境,从tomcat的lib下面引入servlet-api.jar包.
- #error和line
#error message ----注:message不需要用双引号包围, #error 编译指示字用于自定义程序特有的编译错误消息类似的, #warning用于生成编译警告,但不会停止编译. 在l ...
- Android 权限信息
访问登记属性 android.permission.ACCESS_CHECKIN_PROPERTIES ,读取或写入登记check-in数据库属性表的权限 获取错略位置 android.permiss ...
- 【整理】Virtualbox中的网络类型(NAT,桥接等),网卡,IP地址等方面的设置
之前是把相关的内容,放到: [已解决]实现VirtualBox中的(Guest OS)Mac和主机(Host OS)Win7之间的文件和文件夹共享 中的,现在把关于网络配置方面内容,单独提取出来,专门 ...