cocos2d-x3.2 使用开关控制按钮 ControlSwitch
ContolSwitch
控件起到了一个开关的作用类似于现实生活中的开关,直接上代码:
.h文件
//
// SwitchBtnScene.h
// LSWGameIOS
//
// Created by lsw on 14-10-17.
//
// #ifndef LSWGameIOS_SwitchBtnScene_h
#define LSWGameIOS_SwitchBtnScene_h #include "cocos2d.h"
#include "cocos-ext.h" class SwitchBtnScene : public cocos2d::Layer
{
public:
static cocos2d::Scene *createScene();
bool init();
CREATE_FUNC(SwitchBtnScene); void valueChanged(cocos2d::Ref *sender, cocos2d::extension::Control::EventType evt);
}; #endif
.cpp文件
//
// SwitchBtnScene.cpp
// LSWGameIOS
//
// Created by lsw on 14-10-17.
//
// #include "SwitchBtnScene.h"
#include "GUI/CCControlExtension/CCControlSwitch.h" USING_NS_CC;
USING_NS_CC_EXT; Scene *SwitchBtnScene::createScene()
{
auto scene = Scene::create();
auto layer = SwitchBtnScene::create();
scene->addChild(layer);
return scene;
} bool SwitchBtnScene::init()
{
if (!Layer::init())
{
return false;
} auto winSize = Director::getInstance()->getWinSize();
auto onLabel = Label::createWithSystemFont("on", "Arail", 20);
auto offLabel = Label::createWithSystemFont("off", "Arail", 20);
onLabel->setColor(Color3B(0, 0, 0));
offLabel->setColor(Color3B(0, 0, 0)); auto maskSprite = Sprite::create("switchButton/switchGreen.png");
auto onSprite = Sprite::create("switchButton/switchGreen.png");
auto offSprite = Sprite::create("switchButton/switchRed.png");
auto thumbSprite = Sprite::create("switchButton/switchBtn.png");
//设置按钮的截取范围 开关图片和显示文字以及按钮
ControlSwitch *switchBtn = ControlSwitch::create(maskSprite, onSprite, offSprite, thumbSprite, onLabel, offLabel);
addChild(switchBtn);
switchBtn->setPosition(Vec2(winSize.width/2, winSize.height/2));
//设置监听事件
switchBtn->addTargetWithActionForControlEvents(this, cccontrol_selector(SwitchBtnScene::valueChanged), Control::EventType::VALUE_CHANGED); return true;
} void SwitchBtnScene::valueChanged(Ref *sender, Control::EventType evt)
{
if (evt == Control::EventType::VALUE_CHANGED)
{
ControlSwitch *btn = (ControlSwitch *)sender;
if (btn->isOn())
{
CCLOG("btn is on");
}
else
{
CCLOG("btn is off");
}
}
else
{
CCLOG("is other state");
}
}
cocos2d-x3.2 使用开关控制按钮 ControlSwitch的更多相关文章
- element UI实现表格中添加开关控制按钮
我使用的是element ui V1.4.3 如下图是我要实现的效果: <template> <div> <el-button type="text" ...
- Kali-Linux-美化与优化
照理说,linux的桌面是不应当存在在这个世界上的,作为一个linux用户,一味捣鼓桌面显得hin-不专业.但是,虚拟机要用到,浏览器要用到--更何况,自己的老婆能不打扮一下么? update:201 ...
- Cocos2d—X游戏开发之CCToggle(菜单标签切换)CCControlSwitch(开关切换)
Cocos2d—X游戏开发之CCToggle(菜单标签切换) 首先继承子CCMenu,是菜单标签中的一种.‘ class CC_DLL CCMenuItemToggle : public CCMenu ...
- cocos2d-x3.0创建第一个jsb游戏
第一步: 最新的cocos2d-x.下载地址https://github.com/cocos2d/cocos2d-x github上最新的引擎,值得注意的是官网上发布的引擎是稳定版.选择哪种就看个人喜 ...
- 如何优化cocos2d程序的内存使用和程序大小
在我完成第一个游戏项目的时候,我深切地意识到"使用cocos2d来制作游戏的开发者们,他们大多会被cocos2d的内存问题所困扰".而我刚开始接触cocos2d的时候,社区里面的人 ...
- POJ 1681 (开关问题+高斯消元法)
题目链接: http://poj.org/problem?id=1681 题目大意:一堆格子,或白或黄.每次可以把一个改变一个格子颜色,其上下左右四个格子颜色也改变.问最后使格子全部变黄,最少需要改变 ...
- POJ 1222 (开关问题+高斯消元法)
题目链接: http://poj.org/problem?id=1222 题目大意:一堆开关,或开或关.每个开关按下后,周围4个方向开关反转.问使最后所有开关都关闭的,开关按法.0表示不按,1表示按. ...
- (译)如何优化cocos2d程序的内存使用和程序大小:第二部分(完)
前言:从上周发布教程的微博反应情况来看,cocos2der们对于游戏的内存问题还是非常关心的.本文是上一篇博文的续,旨在教大家如何减少cocos2d程序的大小. 全文如下: 减少你的程序的大小 把纹理 ...
- 【Cocos2d入门教程四】Cocos2d-x菜单篇
游戏世界多姿多彩,无论多靓丽的游戏,多耐玩的游戏,在与游戏用户交互上的往往是菜单. 上一章我们已经大概了解了导演.节点.层.精灵.这一章以菜单为主题. 菜单(Menu)包含以下内容: 1.精灵菜单项( ...
随机推荐
- hdu 5718 Oracle 高精度
Oracle Time Limit: 8000/4000 MS (Java/Others) Memory Limit: 262144/262144 K (Java/Others) Problem ...
- Headfirst JSP 01 (概述)
HTTP 协议 http 是tcp/ip上层协议, 如果你对这些网络协议还不是太熟悉, 下面提供一个非常简单的解释, tcp负责确保从一个网络节点向另一个网络节点发送文件能作为一个完整的文件到达目的地 ...
- linux下使用svn
安装:apt-get install subversion CHECKOUT 将文件checkout到本地目录 svn checkout path(path是服务器上的目录)例如:svn checko ...
- Qt之透明提示框
简述 经常使用企鹅的小伙伴一定对登录失败的提示框很熟悉,主要涉及窗口透明并添加图标.提示信息.关闭按钮的显示等. 我们可以利用QWidget创建一个提示框,然后通过样式设置我们想要的效果. 简述 效果 ...
- 关于Qt
什么是Qt Qt是一个针对桌面.嵌入式.移动设备的一个跨平台的应用程序开发框架,支持的平台包括Linux.OS X.Windows.VxWorks.QNX.Android.iOS.BlackBerry ...
- Mybatis foreach
批量删除: <delete id= "deleteBatchByXXX" parameterType= "list"> delete from 表名 ...
- HDU (线段树 单点更新) I Hate It
和上一道题没什么变化,只不过把单点增减变成了单点替换,把区间求和变成了区间求最大值. #include <cstdio> #include <algorithm> using ...
- *ecshop 限制文章帮助文章显示条数
1.打开 /themes/default/library/help.lbi 文件 <!-- {foreach from=$help_cat.article item=item} --> & ...
- swun 1612 合并果子
//思路:这题思路似乎很简单,每次取出最小的两个堆合并, //但是由于数据太大,不能采取每次进行排序的方式,所以 //想到用优先队列,以数据小的优先级更高为标准,但是 //优先队列中的数据默认情况 ...
- suse linux中apache+php服务器安装
主站下载源码 tar zxvf httpd-2.2.4.tar.bz2cd httpd-2.2.4 ./configure --prefix=/usr/local/apache --sysconfdi ...