您的位置:首页 > 移动开发 > Cocos引擎

cocos2dx-CCControlSwitch

2014-07-03 12:05 483 查看
声 明

本教程仅用于初学cocos2dx同学使用,内容由本人(孤狼)学习过程中笔记编写,本教程使用cocos2dx版本为2.1.4。本教程内容可以自由转载,但必须同时附带本声明,或注明出处。

gl.paea.cn版权所有。

大家好,欢迎回到“和屌丝一起学cocos2dx”系列教程,上节课我们说到了CCEditBox控件,不知道大家现在掌握的怎么样了,有没有做出来呢?哈哈,估计都做出来了吧,好了这节我们说一下一个新的控件--CCControlSwitch。

老规矩,来新建个项目叫Controlswitchdemo。

【一】:创建

controlswitch的创建方式有两种,我们来分别看下。

1.CCControlSwitch::create("底图CCSprite对象","打开状态CCSprite对象","关闭状态CCSprite对象","拨动开关CCSprite对象");

2.CCControlSwitch::create("底图CCSprite对象","打开状态CCSprite对象","关闭状态CCSprite对象","拨动开关CCSprite对象","打开状态CCLabelTTF对象","关闭状态CCLabelTTF对象");

【二】:函数

1.setOn //设置开关状态

2.IsOn //获取开关状态

3.hasMoved //获取当前开关是否为手动拨动开关(其别与点击拨动)

4.setEnabled //设置开关是否能操作

【三】:示例

Controlswitch.h文件

1.包含cocos-ext.h文件 #include "cocos-ext.h"

2.引用命名空间extension using namespace cocos2d::extension;

Controlswitch.cpp文件

1.引用命名空间extension using namespace extension;

2.导入图片,这里我给大家准备好了4张图片。









3.写上代码。

/*CCSprite * spritbg=CCSprite::create("bg.png");

CCSprite * spriton=CCSprite::create("on.png");

CCSprite * spritoff=CCSprite::create("off.png");

CCSprite * spritthumb=CCSprite::create("thumb.png");

CCLabelTTF * ttfon=CCLabelTTF::create("on","Arial",14);

CCLabelTTF * ttfoff=CCLabelTTF::create("off","Arial",14);

CCControlSwitch * mycontrolswith=CCControlSwitch::create(spritbg,spriton,spritoff,spritthumb,ttfon,ttfoff);*/

CCControlSwitch * mycontrolswith=CCControlSwitch::create(

CCSprite::create("bg.png"),

CCSprite::create("on.png"),

CCSprite::create("off.png"),

CCSprite::create("thumb.png")

);

mycontrolswith->setPosition(ccp(mysize.width/2,mysize.height/2));

mycontrolswith->setOn(true);

this->addChild(mycontrolswith,0);



4.运行。这里我们看到功能已经出来了,但是图片却都被覆盖了,问题原因还没找到,等待后面找到后发布。



本节DEMO下载

2013/07/11 更新:

已经经过测试表明,出现背景图覆盖的原因是2.1.4版本的问题,低版本均未出现该现象。

2013/08/24 更新:

2.1.5版本已经解决了不显示的bug,跳转地址 2.1.5-孤狼优化版

上一篇:和屌丝一起学cocos2dx-CCEditBox

下一篇:和屌丝一起学cocos2dx-CCControlSlider
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: