2015-01-12 148 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

加載菜單