首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在多个场景中添加相同的CCMenu

在多个场景中添加相同的CCMenu
EN

Stack Overflow用户
提问于 2012-12-11 03:42:00
回答 1查看 126关注 0票数 0

iOS和Cocos2d新手( 2.x )

好的,我想要创建一个菜单对象,并从每个新场景调用它。

示例:

  • Scene1,添加菜单
  • Scene2,添加与Scene1相同的菜单

我只看过如何初始化CCMenu,当您插入该层本身时。您可以构建这些项,然后将它们添加到CCMenu中,等等。

  • scenes

如何初始化CCMenu一次,然后将其添加到我正在观看的任何场景中?因此,如果我正在查看Scene1或Scene2,它仍然是相同的菜单。

这有道理吗?

EN

回答 1

Stack Overflow用户

发布于 2012-12-11 05:46:37

每个场景都需要一个不同的菜单实例,所以从技术上讲,每个场景都需要初始化一次。

但我想你是在问“我怎么写一次代码,然后在每个场景中重用这些代码。”您将希望创建某种可以重用的CC对象。这可能是CCMenu、CCLayer或其他最适合用途的子类。所以你可以尝试这样的方法:

代码语言:javascript
复制
@interface MyMenuLayer : CCLayer {
  CCMenu *myMenu;
}
@end

然后,在.m文件中,设置您喜欢的菜单。当您想要将其包含在Scene1中时:

代码语言:javascript
复制
MyMenuLayer *menu = [MyMenuLayer node];
[self addChild:menu];

您可以在Scene2中使用完全相同的代码。

(您可以只扩展CCMenu而不是CCLayer,但我个人更喜欢使用层而不是菜单。这是个人选择的问题。)

很难用你问题中的信息给出一个非常明确的答案,但我希望这能让你走上正确的道路。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13813276

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档