我試圖創建一個斯威夫特框架,其他iOS可用使用雨燕或目的C.如何使用枚舉在iOS 8的斯威夫特框架的公共API
在我的幾個公共函數的應用程序,我需要的使用枚舉。當然,斯威夫特有枚舉,但這些都不是使用目的C.因此客戶端應用程序兼容,然後我試着用以下形式的目標C風格的枚舉:
typedef NS_ENUM(NSInteger, MyEnumType)
{
MyEnumTypeGreen,
MyEnumTypeBlue,
MyEnumTypeYellow
};
爲了使這個枚舉類型的公共,我把這個聲明在PublicEnums.h中。從我的銀行代碼的訪問,我需要這條線在我的框架,項目的銜接,Header.h:
#import "PublicEnums.h"
但後來我得到這個錯誤:
Include of non-modular header inside framework module 'MyFramework' which flags a line in the auto-generated MyFramework-Swift.h file:
#import "/Users/sourcepath.../ObjectiveC/MyFramework-Bridging-Header.h"
難道真的沒有辦法在Objective-C應用程序中可用的Swift框架中使用任何類型的枚舉?
謝謝。但我不是#導入橋接頭;正如你所描述的那樣,它實際上是在項目級設置的。發生該錯誤是因爲自動生成的MyFramework-Swift.h自動包含該#import語句。我認爲重現你需要一個工作空間,同時包含一個Swift框架和一個引用該框架的示例應用程序。 – Daniel 2014-10-01 21:43:20
如果您有不兼容的框架,請維護人員更新它。 – Mundi 2014-10-02 11:41:13
我是框架創建者 – Daniel 2014-10-02 16:44:03