2015-10-13 53 views
2

enter image description here找不到'Track'的超類'Object'的接口聲明;你的意思是'NSObject'嗎?

我將RealmSwift框架集成到我的OS X項目中。

import RealmSwift 
public class Track: Object { 
    // class members and functions 
} 

我改變軌道類來擴展對象,而不是NSObject的,我得到的項目名 - Swift.h此錯誤

@interface Track : Object 

我使用的依賴管理的CocoaPods。我爲這個問題做了谷歌搜索,但沒有得到太多。

新增RealmSwift依賴這樣

pod 'RealmSwift' 
+0

Show是類Object的接口。如果你有。如果不是,那就可以解釋它。 – gnasher729

+0

@ gnasher729沒跟着你 –

回答

0

當你創建an issue for that on the realm-cocoa repo還有,這裏從彙總的交叉發佈:

一般自動生成的Objective-C的兼容性頭不應該與CocoaPods集成時會導致問題。

作爲一種解決方法,您可以通過將生成設置SWIFT_INSTALL_OBJC_HEADER設置爲NO來禁用現在的生成。

SWIFT_INSTALL_OBJC_HEADER

請注意,我們從混合設置,其中的Objective-C是用來靠斯威夫特訪問模型中使用RealmSwift勸阻。

如果您的模型類應該位於包含在橋接標頭中的類中,或者如果有其他類(可傳遞地)依賴於它們,那麼您無法在此設置中真正使用Realm Swift 。

您需要用pod "Realm"替換Podfile中的條目,再次運行pod install,並改爲從RLMObject繼承。可能需要進一步的步驟,具體取決於您是否已經開始基於Realm Swift API實施應用程序/模型邏輯,因爲Realm Objective-C API沒有帶來相同的功能。

+0

謝謝,我改成使用Realm並使用RLMObject和RLMArray。但現在不斷得到這個錯誤。 ***由於未捕獲異常'NSInvalidArgumentException',原因:' - [Swift._SwiftDeferredNSArray objectClassName]:無法識別的選擇器發送到實例0x600000427960' –

+0

'終止應用程序你有一個堆棧跟蹤,指出這個錯誤指示的位置? – marius

相關問題