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

    作者:课课家教育更新于: 2016-05-03 17:30:53

      我们在手机游戏中开关按钮是非常常见的,我们的同学们有没有考虑过在游戏开发中是如何去实现开关按钮的呢?其实只要用好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开关按钮效果图  小结:

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

Cocos2d 更多推荐

课课家教育

未登录