objective-c – 在升级到Xcode 7.3 swift 2.2之后,从swift调用ob
发布时间:2020-12-16 03:36:09 所属栏目:百科 来源:网络整理
导读:该代码在从7.1开始升级到 Xcode 7.3之前工作良好,而且迅速2.2.我也看过使用typedef NS_ENUM(NSUInteger,MyStatus)…的答案…但如果可能的话,我宁可不改变现有的obj-c代码. 在obj-c头文件中定义: typedef enum { StatusPending,StatusTimeout,StatusSuccess,
该代码在从7.1开始升级到
Xcode 7.3之前工作良好,而且迅速2.2.我也看过使用typedef NS_ENUM(NSUInteger,MyStatus)…的答案…但如果可能的话,我宁可不改变现有的obj-c代码.
在obj-c头文件中定义: typedef enum { StatusPending,StatusTimeout,StatusSuccess,StatusFail } MyStatus; Swift文件中的声明: /* some code to retrieve the status */ switch (status) { case .StatusSuccess: /* do something */ /* other test cases omitted here */ default: } 我试过使用.rawValue,.value等,但我仍然收到一个错误: 在“MyStatus”类型中找不到枚举大小写“StatusSuccess” 在升级之前,所有工作都正常,并尝试卸载/重新安装Xcode 7.3,Product-> Clean,Product-> Clean Build Folder ..但没有成功:-( 解决方法
您不能在@interface和@end中声明“typedef NS_ENUM(NSUInteger,EnumName){}”,解析xcode 7.2与xcode 7.3不同.所以,只要在@interface @end块之外移动你的枚举声明,它应该可以正常工作,否则它被认为是私有声明
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |