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:取消当前全部触点

Cocos2d-x学习笔记(12)(CCControlSwitch开关、CCControlSlider滑动条、CCControlButtonbutton)的更多相关文章

  1. Ext.Net学习笔记12:Ext.Net GridPanel Filter用法

    Ext.Net学习笔记12:Ext.Net GridPanel Filter用法 Ext.Net GridPanel的用法在上一篇中已经介绍过,这篇笔记讲介绍Filter的用法. Filter是用来过 ...

  2. SQL反模式学习笔记12 存储图片或其他多媒体大文件

    目标:存储图片或其他多媒体大文件 反模式:图片存储在数据库外的文件系统中,数据库表中存储文件的对应的路径和名称. 缺点:     1.文件不支持Delete操作.使用SQL语句删除一条记录时,对应的文 ...

  3. golang学习笔记12 beego table name `xxx` repeat register, must be unique 错误问题

    golang学习笔记12 beego table name `xxx` repeat register, must be unique 错误问题 今天测试了重新建一个项目生成新的表,然后复制到旧的项目 ...

  4. Spring MVC 学习笔记12 —— SpringMVC+Hibernate开发(1)依赖包搭建

    Spring MVC 学习笔记12 -- SpringMVC+Hibernate开发(1)依赖包搭建 用Hibernate帮助建立SpringMVC与数据库之间的联系,通过配置DAO层,Service ...

  5. Python3+Selenium3+webdriver学习笔记12(js操作应用:滚动条 日历 内嵌div)

    #!/usr/bin/env python# -*- coding:utf-8 -*-'''Selenium3+webdriver学习笔记12(js操作应用:滚动条 日历 内嵌div)'''from ...

  6. springmvc学习笔记(12)-springmvc注解开发之包装类型參数绑定

    springmvc学习笔记(12)-springmvc注解开发之包装类型參数绑定 标签: springmvc springmvc学习笔记12-springmvc注解开发之包装类型參数绑定 需求 实现方 ...

  7. 并发编程学习笔记(12)----Fork/Join框架

    1. Fork/Join 的概念 Fork指的是将系统进程分成多个执行分支(线程),Join即是等待,当fork()方法创建了多个线程之后,需要等待这些分支执行完毕之后,才能得到最终的结果,因此joi ...

  8. matlab学习笔记12单元数组和元胞数组 cell,celldisp,iscell,isa,deal,cellfun,num2cell,size

    一起来学matlab-matlab学习笔记12 12_1 单元数组和元胞数组 cell array --cell,celldisp,iscell,isa,deal,cellfun,num2cell,s ...

  9. SpringMVC:学习笔记(12)——ThreadLocal实现会话共享

    SpringMVC:学习笔记(12)——ThreadLocal实现会话共享 ThreadLocal ThreadLocal,被称为线程局部变量.在并发编程的情况下,使用ThreadLocal创建的变量 ...

  10. Spring源码学习笔记12——总结篇,IOC,Bean的生命周期,三大扩展点

    Spring源码学习笔记12--总结篇,IOC,Bean的生命周期,三大扩展点 参考了Spring 官网文档 https://docs.spring.io/spring-framework/docs/ ...

随机推荐

  1. 开放API接口

    [开放API]——知乎.博客园等开放API接口(更新ing)   Cnodejs.org: https://cnodejs.org/api/ 和风天气: http://docs.heweather.c ...

  2. vue工程化:返回顶部和底部的动画效果

    . <template> <div> <div class="scroll" :class="{show:isActive}"&g ...

  3. yum升级php版本

    查看当前 PHP 版本 1 php -v 查看当前 PHP 相关的安装包,删除之 1 2 3 4 5 yum list installed | grep php   yum remove php   ...

  4. React开发实时聊天招聘工具 -第四章 Redux

    复杂以后 setState 就不太方便了 所以使用Redux来管理 React只负责View. Store.State.Dispatch.Reducer reducer(state,action) { ...

  5. jquery.data.resource.js

    /*! * jQeury Data Pkugin * version: 1.0.0-2016.03.03 * Requires jQuery v1.10.2 or later * Copyright ...

  6. vue 全局组件的注册

    第一步 在main.js里面 引入需要注册的组件例如: //引入组件 import header from  './components/header.vue' import footer from ...

  7. struts2与常用表格ajax操作的json传值问题

    struts与常用的dataTables和jqueryGrid等表格进行ajax传值时,经常会传值不适配的问题,这是因为struts在进行ajax操作时已经对你要操作的json数据进行了处理,所以不需 ...

  8. P1759 通天之潜水(不详细,勿看)(动态规划递推,组合背包,洛谷)

    题目链接:点击进入 题目分析: 简单的组合背包模板题,但是递推的同时要刷新这种情况使用了哪些物品 ac代码: #include<bits/stdc++.h> using namespace ...

  9. 使用maven的mybatis-generator代码生成器插件生成实体类、mapper配置文件和mapper接口(使用idea)

    接着之前创建的ssmMaven项目 一: 在pom文件中加入mybatis-generator插件 <plugins> <plugin> <groupId>org. ...

  10. Zabbix微信告警

    Zabbix微信告警 摘要 Zabbix可以通过多种方式把告警信息发送到指定人,常用的有邮件,短信报警方式,但是越来越多的企业开始使用zabbix结合微信作为主要的告警方式,这样可以及时有效的把告警信 ...