我想更新我的应用程序并仅切换到Lion,因为我正在使用新的NSPopover类。我将部署目标和基本SDK设置为10.7,但我仍然收到错误消息:
NSPopover:类不可用(10.7之前的Mac OS X版本上的NSPopover)
我还设置了XIB,我将NSPopover用于Interface Builder 4.1及其SDK到10.7。我做错了什么?
编辑:我忘了提到该项目已成功构建,并且它可以与popover一起运行并正常运行!只有那种恼人的错误才会不断出现。我不知道它是否会影响到App Store的提交......
答案 0 :(得分:3)
我无法复制你遇到的问题。如果我创建一个带有弹出窗口的xib文件,然后将界面构建器中该xib的部署设置设置为10.6,我会得到与您相同的错误。当我将其更改为10.7或Project SDK版本时,它会消失。
这可能发生在一个全新的项目或我挖出的旧项目中,并使用Xcode中出现的选项进行“现代化”。
我已尝试更改项目中的所有部署目标,但除了界面构建器中的设置外,实际上没有任何内容出现错误。
您可能值得在文本编辑器中打开有问题的xib文件并查找以下内容:
<int key="IBDocument.SystemTarget">1070</int>
如果这是一个不同的值,或者重复或丢失,那可能是您的问题。
如果您有多个xib的本地化版本,则需要更改所有版本的设置。
如果做不到这一点,我认为您所能做的就是将xib的内容复制到一个新文件中,根据它的复杂程度,这可能是也可能不是很大的痛苦。
我希望其中一些有用,我想这是一个非常令人沮丧的问题。哦,如果您的应用程序仅限Lion,您可以将架构设置为64位。