2

有人在 OSX 上遇到过 FlexNativeMenu 的问题吗?我的应用程序已准备好沙盒,并已获得 Mac App Store 的批准。我正在使用 Flash Builder 4.6 和 AIR 3.4 SDK。崩溃不会发生在所有计算机上,但控制台警告会发生。

我尝试使用 xml/e4x 和对象数组作为数据提供者。我尝试过使用和不使用 keyEquivalents。即使是最简单的菜单也会导致错误。Mac 控制台中报告的完整错误消息是:

" * 警告:方法 setMnemonicLocation:在类 AIR_PlayerContentMenuItem 中已过时,将在版本 GM 中删除 * "

如果从源中删除 FlexNativeMenu,应用程序将在沙箱中运行而不会出错。

///

我确实在 Mac 开发人员库中找到了以下似乎相关的内容:这让我认为 AIR 3.4 SDK 正在调用已弃用的方法。

setMnemonicLocation:已弃用。在要加下划线的位置设置菜单项标题的字符。(在 OS X v10.6 中已弃用。)

  • (void)setMnemonicLocation:(NSUInteger)location 参数 location 标题字符数组的整数索引。location 必须是从 0 到 254。 讨论 此字符标识用户可以访问菜单项的访问键。

可用性 在 OS X v10.0 及更高版本中可用。在 OS X v10.6 中已弃用。另见——在 NSMenuItem.h 中声明的 mnemonicLocation

4

1 回答 1

0

我发现的唯一解决方法是使用 NativeMenu 而不是 FlexNativeMenu 来实现菜单。这完全消除了 OS X 控制台中的 setMmemonicLocation WARNING。

于 2012-11-28T16:26:00.103 回答