簡體   English   中英

在Objective-C項目中導入Swift框架-錯誤-未知類型名稱

[英]Import Swift Framework in Objective-C Project - Error - Unknown Type Name

我已經為這個特定問題努力了一段時間。 基本上,我使用Carthage添加了一個框架BigNerdRanch CoreDataStack

但是我在我的Objective-C代碼上使用上述框架時遇到了問題。 我的項目是一個Objective-C項目,最近我在其中添加了Swift代碼和Swift框架。

到目前為止,我已經能夠在我的Swift代碼中毫無問題地使用Swift框架。 但是一旦我開始在舊的Obj-C上使用上述Swift框架,特別是AppDelegate.m,無論如何我都會不斷收到編譯器錯誤。

據我了解,我必須像這樣導入它:

#import <CoreDataStack/CoreDataStack-Swift.h>

我在AppDelegate.m上做了。

我的項目中也有以下設置:

項目目標設置:

在此處輸入圖片說明

Swift編譯的構建設置:

在此處輸入圖片說明

我一直在StackOverflow中看到一些答案,以將public添加到類中。 但是我無法這樣做,因為導入的框架是獨立的,並且只包含供我查看的XCode項目中的標頭。

在此處輸入圖片說明

感謝您的幫助。

您添加了一個快速編寫的框架,如果它們不支持對Objective C支持,則不能在目標c代碼中使用它。

但是,您可以快速創建一個類,該類將用作框架和ObjC類之間的中介。

@objc class coreDataStackConvertor: NSObject {

    func createStack(arg: Type) {

        // Code which uses the real CoreDataStack
    }

}

從目標c類中,您可以使用轉換器類中的方法。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM