回顾一下上一篇的内容,我们已经学会了创建一个新的场景scene,添加sprite和label到层中,掌握了定时事件schedule。我们可以顺利的写出打飞机的主场景框架。
上一篇的内容我练习了七个新场景,每一个场景都展示不同的东西,像背景定时切换、各种字体的随机颜色和位置等。每次要切换一个场景都要修改AppDelegate中的调用代码,非常的不方便查看,这一篇我们写场景的切换。每当我们创建一个新的场景的时候只要添加对应按钮到主界面,点击即可以切换过去查看对应的效果。这个有点类似官方提供的cpptest的查看方式,所以说场景切换是非常简单易用的功能。
要点击切换场景,必须要有按钮可以接收消息,所以首先学习一下菜单(Menu):
Menu创建菜单
MenuItem Create 菜单子项的创建
MenuItemFont是字菜子项。
auto item= MenuItemFont::create("Hello,Menu",CC_CALLBACK_1(MenuScene::Menutest, this));
"Hello, Menu"是菜单子项按钮的文字。
MenuScene::Menutest是回调函数,它的参数是Menutest(Ref * pSender),这个参数类型是什么可以通过查看create定义来获得。
CC_CALLBACK_1就是绑定一个函数为回调函数,_1表示这个函数的只有一个参数。
我们的第一个菜单可以这样写:
//开头这四句肯定是添加到init()函数里的
auto item= MenuItemFont::create("Hello,Menu",CC_CALLBACK_1(MenuScene::Menutest, this));
auto menu= Menu::create();
menu->addchild(item);
this->addchild(menu);
voidMenuScene::Menutest(Ref *ref){
//此处可以添加一个精灵,每点击一次菜单按钮就添加一个精灵到场景中。
}
还可以这样创建一个菜单,不必每次都调用menu->addchild(item):
auto item =MenuItemFont::create("Hello, Menu",CC_CALLBACK_1(MenuScene::Menut

本文是cocos2dx 3.1的学习教程,主要讲解如何创建菜单,包括MenuItem的创建和菜单子项的操作。接着介绍场景切换,使用replaceScene和pushScene的不同以及如何添加切换动画。还详细阐述了正向传值的方法,如设置成员变量和使用NotificationCenter进行通知。通过这些内容,读者可以掌握在cocos2dx中制作交互式游戏的基础技巧。
——菜单、场景切换、场景传值&spm=1001.2101.3001.5002&articleId=32911879&d=1&t=3&u=49de410ce7464574b28f029c8d9754f7)
2万+

被折叠的 条评论
为什么被折叠?



