2015-01-12 127 views
2

我有一个主要在iOS上进行调试的cocos2d-x应用程序。现在我正在开发OS X的东西。Cocos2d-x OS X应用程序菜单

正如预期的那样,一切工作几乎是一样的,除了我在我的iOS应用程序的一些手势命令不转化为OS X.

我想创建菜单项(OS X级)和相关的快捷方式来完成一些手势交互(至少作为一个选项)。

创建MainMenu.xib并将其链接到项目设置中似乎不是全部内容。菜单仍然是通用的“AppName”和Window菜单,而不是我在xib文件中创建的菜单。

我相信我需要以某种方式将它连接到AppDelegate,但我不知道如何,也没有找到任何成功的文档,至少有关它与Cocos2d- X。

回答

3

本质上,您只需要在您从AppDelegate.cpp或任何地方调用的Objective-C++类中创建菜单。为了调用objective-c编译器/运行时,扩展名为.mm。然后,您可以创建NSMenu和添加项目或更换整个菜单集[ServiceMenu/WindowMenu/MainMenu的]

NSMenu参考:https://developer.apple.com/library/mac/documentation/Cocoa/Reference/ApplicationKit/Classes/NSMenu_Class/index.html

我发现的唯一有趣的部分是从菜单中接收的动作,我相信你还需要创建一个Objective-C类作为接收者(目标)。

你应该能够加载.xib文件作为一个全新的菜单来替代一个GLFW3创建的,但我还没有看过。

更新:下面是一个示例项目。

https://github.com/stevetranby/TestNSMenuCocos2Dx

更新:追加例题项目与的.xib

加载菜单