cocos2dx 3.1从零学习(二)——菜单、场景切换、场景传值

回顾一下上一篇的内容我们已经学会了创建一个新的场景scene,添加spritelabel到层中掌握了定时事件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::Menutest,this));
    auto item1 =MenuItemFont::create("
  • 7
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 6
    评论
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值