Cocos2d-X在SwitchControl使用
SwitchControl控制类中的一个开关的发挥了作用似在现实生活中开关
因为控制相对简单,我没有做过多的解释。直接在代码
首先在project文件夹下的Resource文件夹中加入三张图片
在SwitchControl.h加入以下代码
#ifndef _SwitchControl_H_
#define _SwitchControl_H_ #include "cocos2d.h"
#include "cocos-ext.h"
USING_NS_CC;
USING_NS_CC_EXT; class SwitchControl : public CCLayer
{
public:
static CCScene* scene();
CREATE_FUNC(SwitchControl);
bool init();
void switchValueChanged(CCObject*, CCControlEvent);
}; #endif
在SwitchControl.cpp中加入以下代码
#include "SwitchControl.h" CCScene* SwitchControl::scene()
{
CCScene* s = CCScene::create();
SwitchControl* layer = SwitchControl::create();
s->addChild(layer);
return s;
} bool SwitchControl::init()
{
CCLayer::init(); //得到窗体的大小
CCSize winSize = CCDirector::sharedDirector()->getWinSize(); //设置ControlSwitch控件打开的文字No"
CCLabelTTF* on = CCLabelTTF::create("ON", "Arial", 16); //设置ControlSwitch控件关闭时的文字"OFF"
CCLabelTTF* off = CCLabelTTF::create("OFF", "Arial", 16); //设置ControlSwitch控件打开的文字的颜色
on->setColor(ccc3(0, 0, 0)); //设置ControlSwitch控件关闭时的颜色
off->setColor(ccc3(0, 0, 0)); //创建ControlSwitch控件
CCControlSwitch* control = CCControlSwitch::create(
CCSprite::create("switch-mask.png"),
CCSprite::create("switch-on.png"),
CCSprite::create("switch-off.png"),
CCSprite::create("switch-thumb.png"),
on,
off); //加入ControlSwitch控件
addChild(control); //设置ControlSwitch控件的位置
control->setPosition(ccp(winSize.width / 2, winSize.height / 2)); // 注冊valuechange消息,当valuechange时。调用switchValueChanged函数
control->addTargetWithActionForControlEvents(this,
cccontrol_selector(SwitchControl::switchValueChanged),
CCControlEventValueChanged); return true;
} void SwitchControl::switchValueChanged(CCObject* sender, CCControlEvent ev)
{
if (ev == CCControlEventValueChanged)
{
CCControlSwitch* control = (CCControlSwitch*)sender;
if (control->isOn())
{
CCLog("Switch if ON");
}
else
{
CCLog("Swith is Off");
}
}
else
{
CCLog("other events");
}
}
运行结果:
演示效果:
版权声明:本文博客原创文章,博客,未经同意,不得转载。
Cocos2d-X在SwitchControl使用的更多相关文章
- 小尝试一下 cocos2d
好奇 cocos2d 到底是怎样一个框架,正好有个项目需要一个游戏框架,所以稍微了解了一下.小结一下了解到的情况. 基本概念 首先呢,因为 cocos2d 是基于 pyglet 做的,你完全可以直接用 ...
- 采用cocos2d-x lua 制作数字滚动效果样例
require "Cocos2d"require "Cocos2dConstants"local testscene = class("testsce ...
- Cocos2d 利用继承Draw方法制作可显示三维数据(宠物三维等)的三角形显示面板
很久没有写博客了,这段时间比较忙,又是搬家又是做自己的项目,还有太多琐碎的事情缠身,好不容易抽出时间把最近自己做的一些简单例子记录一下. 在我的项目中,我需要一个显示面板来显示游戏中的一个三维数据,例 ...
- iPhone开发与cocos2d 经验谈
转CSDN jilongliang : 首先,对于一个完全没有mac开发经验,甚至从没摸过苹果系统的开发人员来说,首先就是要熟悉apple的那一套开发框架(含开发环境IDE.开发框架uikit,还有开 ...
- cocos2d学习记录
视频 - http://www.manew.com/forum-105-3.html一个论坛帖 - http://www.zhihu.com/question/21114802官网 - http:// ...
- Android下Cocos2d创建HelloWorld工程
最近在搭建Cocos2d的环境,结果各种问题,两人弄了一天才能搞好一个环境-! -_-!! 避免大家也可能会遇到我这种情况,所以写一个随笔,让大家也了解下如何搭建吧- 1.环境安装准备 下载 tadp ...
- 学生信息管理系统(cocos2d引擎)——数据结构课程设计
老师手把手教了两天半,看了一下模式,加了几个功能就大功告成了!!! 给我的感想就是全都是指针! 添加图片精灵: CCSprite* spBG = CCSprite::create("&qu ...
- cocos2d触碰例子代码
// // TestLayer.h // MiniTD // // Created by OnePiece on 12-7-30. // Copyright 2012年 __MyCompanyName ...
- 如何优化cocos2d程序的内存使用和程序大小
在我完成第一个游戏项目的时候,我深切地意识到"使用cocos2d来制作游戏的开发者们,他们大多会被cocos2d的内存问题所困扰".而我刚开始接触cocos2d的时候,社区里面的人 ...
随机推荐
- [C++]C++中的运行时类型检测
Date:2014-1-3 Summary: 使用C++中的运行时类型检测.(文章重点在于记录本人的使用情况,并非深层讨论RTTI) Contents:写习惯C#的我,在C++依然存在哪些.NET的惯 ...
- OCA读书笔记(9) - 管理数据同步
9.Managing Data Concurrency 描述锁机制以及oracle如何管理数据一致性监控和解决锁冲突 管理数据的并发--管理锁数据的不一致:脏读更改丢失幻影读 脏读:数据是指事务T2修 ...
- HDU 4284 Travel
据说是TSP经典问题...可以用状态压缩做.但是看到数据量,就厚着脸皮上搜索了...先floyd预处理每对点间的最小消费,然后只考虑要去的城市就可以了,这样的话城市数最多16个...当时就暴搜了... ...
- ovirt node的安装简介
Ovirt安装模式 支持install,update,downupdate,reinstall四种安装方式. install:全新安装(以前未安装过ovirt node). update:安装比 ...
- HTML5 Canvas动画效果实现原理
在线演示 使用HTML5画布可以帮助我们高速实现简单的动画效果.基本原理例如以下: 每隔一定时间绘制图形而且清除图形,用来模拟出一个动画过程,能够使用context.clearRect(0, 0, x ...
- 风起看云涌,叶落品人生 - Google 搜索
风起看云涌,叶落品人生 - Google 搜索 风起看云涌,叶落品人生
- POJ1470 Closest Common Ancestors 【Tarjan的LCA】
非常裸的模版题,只是Tarjan要好好多拿出来玩味几次 非常有点巧妙呢,tarjan,大概就是当前结点和它儿子结点的羁绊 WA了俩小时,,,原因是,这个题是多数据的(还没告诉你T,用scanf!=EO ...
- Android它SDK Manager无法更新终极解决方案
前些日子.Google终于发布Android5.0正式版--棒糖.也许你和我一样,,此外,我想在第一时间更新SDK,结果打开SDK Manager,但令人失望,络围墙啊.默默问一句:近期好久没有听到方 ...
- oracle的to_char中的fm
SQL> select '|'||to_char(5,'999')||'|' from dual; 结果为:| 5| SQL> select '|'||to_char(5,'000' ...
- Knockout获取数组元素索引的2种方法,在MVC中实现
原文:Knockout获取数组元素索引的2种方法,在MVC中实现 在遍历数组.集合的时候,通常要获取元素的索引,本篇体验使用Knockout获取索引的2种方法. 假设有这样的一个模型: namespa ...