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. Vue+Bootstrap实现购物车程序(1)

    先看下案例效果:(简单的数量控制及价格运算) 代码: <!DOCTYPE html> <html> <head lang="en"> <m ...

  2. svn 版本库信息修改

    root@hpcstack hpcweb]# svn info 路径: . URL: http://svn.pyindex.com/hpcweb 版本库根: http://svn.pyindex.co ...

  3. freenas 系统可能存在的bug

    1.portal 中ip端口显示有问题. 2.创建extend/target映射之后重启iscsi服务有的时候不能启动. 3.后台/usr /etc 重启系统会自动还原.

  4. Spring Data Redis入门示例:数据序列化 (四)

    概述 RedisTemplate默认使用的是基于JDK的序列化器,所以存储在Redis的数据如果不经过相应的反序列化,看到的结果是这个样子的: 可以看到,出现了乱码,在程序层面上,不会影响程序的运行, ...

  5. 字符串匹配算法之BM算法

    BM算法,全称是Boyer-Moore算法,1977年,德克萨斯大学的Robert S. Boyer教授和J Strother Moore教授发明了一种新的字符串匹配算法. BM算法定义了两个规则: ...

  6. vue cli本地开发跨域问题解决

    首先呢,找到在目录里找到config文件夹 然后修改config文件夹下的index.js里面dev的配置项proxyTable: 修改为: proxyTable: { '/api': { targe ...

  7. js正则表达式,只允许输入纯数字或‘/’

    //输入框,限数字和/----需要多个数量询价,请以/分隔 function onlyonce(obj) {//先把非数字的都替换掉,除了数字和.obj.value = obj.value.repla ...

  8. react-native IOS Build input file cannot be found: '~~~~~/node_modules/react-native/Libraries/WebSocket/libfishhook.a'

    尝试添加或者删除libfishhook.a 如果解决了你的问题请点个赞!

  9. 珂朵莉树(Chtholly Tree)学习笔记

    珂朵莉树(Chtholly Tree)学习笔记 珂朵莉树原理 其原理在于运用一颗树(set,treap,splay......)其中要求所有元素有序,并且支持基本的操作(删除,添加,查找......) ...

  10. 笔试算法题(50):简介 - 广度优先 & 深度优先 & 最小生成树算法

    广度优先搜索&深度优先搜索(Breadth First Search & Depth First Search) BFS优缺点: 同一层的所有节点都会加入队列,所以耗用大量空间: 仅能 ...