2011-09-29 51 views
2

我想更新我的應用程序並僅切換到Lion,因爲我使用的是新的NSPopover類。我把我的部署目標和基地SDK至10.7,但我仍然得到錯誤信息:(之前的10.7 NSPopover在Mac OS X版本)NSPopover:類不可用(10.7之前的Mac OS X版本上的NSPopover)

Error Message

類不可用:

NSPopover

我還設置了XIB,我使用NSPopover將Interface Builder 4.1及其SDK安裝到了10.7。我究竟做錯了什麼?

編輯:我忘了提及該項目成功構建,它運行並與彈出工作正常!只有不斷出現的煩人的錯誤。我不知道這是否會影響提交到App Store ...

Build Succeeded Architecture options Target SDK

回答

3

我不能複製你所得到的問題。如果我創建了一個帶有彈出窗口的xib文件,那麼在界面生成器中將該xib的Deployment設置設置爲10.6,我會得到和你一樣的錯誤。當我將其更改爲10.7或Project SDK版本時,它會消失。

這種情況發生在一個全新的項目中,或者是我使用Xcode中提供的選項挖掘並「現代化」的舊項目。

我已經嘗試更改項目中的所有部署目標,但除了界面生成器中的設置外,實際上並沒有發生錯誤。如果這是一個不同的值,或重複或缺失,這可能是你的問題

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

這可能是值得您在文本編輯器中打開有問題的廈門國際銀行文件,並查找以下。

如果您有多個本地化版本的xib,則需要更改所有版本中的設置。

如果不這樣做,我認爲你所能做的就是將xib的內容複製到一個新文件中,這可能是也可能不是一個巨大的痛苦,這取決於它的複雜程度。

我希望這有助於,我想這是一個非常令人沮喪的問題。哦,另外,如果您的應用程序僅限於Lion,則可以將體系結構設置爲64位。

+0

我打開XIB並將SystemTarget設置爲1060.我在所有本地化中將其更改爲1070,但錯誤仍然存​​在......任何奧德想法?這是真的令人沮喪...複製到一個新的XIB將是最後一個選項,它是相當巨大的; - \ – tamasgal

+0

有趣的是,它是錯誤的,雖然你將它設置在IB。不知道還有什麼要嘗試...清理項目(再次...... ??) – jrturton

+0

是的。我清理它像百次;-)還刪除派生的數據文件夾... hmpf – tamasgal