下载安卓APP箭头
箭头给我发消息

客服QQ:3315713922

使用Cocos2D-X中的MenuItem Toggle类制作开关按钮

作者:课课家教育     来源: http://www.kokojia.com点击数:1332发布时间: 2016-05-03 17:30:53

标签: Cocos2D开关Cocos2D-X开关按钮Cocos2D-X教程

  我们在手机游戏中开关按钮是非常常见的,我们的同学们有没有考虑过在游戏开发中是如何去实现开关按钮的呢?其实只要用好Cocos2d-x中的这个类——MenuItem Toggle,我们就能制作大部分的开关按钮了。

  在手机游戏中,一般都会有类似设置开关这样的按钮,当按钮显示“On”时,按下去功能会被改变功能,并且按钮显示改变为“Off”。接下来我们来学习一下它的制作方法。

  首先新建一个项目。命名为“ToggleMenuTest”,编译运行起来,编译的速度和电脑配置有关系。

编译运行ToggleMenuTest

  把我们的项目编译运行起来,然后我们创建一个方法来实现开关的功能。在HelloWorldScene.h里面新建方法。

  void menuONorOFFCallback(cocos2d::Ref* pSender);

在HelloWorldScene.h里面新建方法

  在修改HelloWorldScene.h之时,具体情况如上图所示,如果你对此有疑问可以在我们网站的视频站学习观看相关视频。

  然后在HelloWorldScene.cpp里实现,这里我们先不写具体的函数功能。然后我们来修改init初始化的代码。

  创建ON和OFF开关按钮,创建MenuItemToggle菜单并实现回调函数。。

  插入的代码段:

  auto start = MenuItemFont::create("ON"); //显示为on

  auto stop = MenuItemFont::create("OFF"); //显示为off

  auto toggle = MenuItemToggle::createWithCallback(

  CC_CALLBACK_1(HelloWorld::menuONorOFFCallback,this),

  start,

  stop,

  NULL);

  toggle->setPosition(Vec2(visibleSize.width/2, visibleSize.height/2)); //设置坐标在屏幕居中

  auto menu = Menu::create(toggle,NULL);

  menu->setPosition(Point::ZERO);

  addChild(menu);

在HelloWorldScene.cpp里实现

  下面我们来运行看看效果,来张演示图给大家看看。

MenuItem Toggle开关按钮效果图  小结:

  好了,本篇教程到这里就结束了,希望各位同学能有所收获~

赞(24)
踩(0)
分享到:
华为认证网络工程师 HCIE直播课视频教程