NSPopover:类不可用(10.7之前的Mac OS X版本上的NSPopover)

时间:2011-09-29 23:34:26

标签: objective-c macos osx-lion nspopover

我想更新我的应用程序并仅切换到Lion,因为我正在使用新的NSPopover类。我将部署目标和基本SDK设置为10.7,但我仍然收到错误消息:

  

NSPopover:类不可用(10.7之前的Mac OS X版本上的NSPopover)

Error Message

我还设置了XIB,我将NSPopover用于Interface Builder 4.1及其SDK到10.7。我做错了什么?

编辑:我忘了提到该项目已成功构建,并且它可以与popover一起运行并正常运行!只有那种恼人的错误才会不断出现。我不知道它是否会影响到App Store的提交......

Build Succeeded Architecture options Target SDK

1 个答案:

答案 0 :(得分:3)

我无法复制你遇到的问题。如果我创建一个带有弹出窗口的xib文件,然后将界面构建器中该xib的部署设置设置为10.6,我会得到与您相同的错误。当我将其更改为10.7或Project SDK版本时,它会消失。

这可能发生在一个全新的项目或我挖出的旧项目中,并使用Xcode中出现的选项进行“现代化”。

我已尝试更改项目中的所有部署目标,但除了界面构建器中的设置外,实际上没有任何内容出现错误。

您可能值得在文本编辑器中打开有问题的xib文件并查找以下内容:

<int key="IBDocument.SystemTarget">1070</int>

如果这是一个不同的值,或者重复或丢失,那可能是您的问题。

如果您有多个xib的本地化版本,则需要更改所有版本的设置。

如果做不到这一点,我认为您所能做的就是将xib的内容复制到一个新文件中,根据它的复杂程度,这可能是也可能不是很大的痛苦。

我希望其中一些有用,我想这是一个非常令人沮丧的问题。哦,如果您的应用程序仅限Lion,您可以将架构设置为64位。