在Objc项目中使用swift类

时间:2016-06-22 06:30:37

标签: ios objective-c swift

在我的一个项目中,我想使用Objective C类中的Swift类。我已经创建了XXX-swift.h文件和一个桥接头文件。大多数swift文件工作正常,但我发现了我的APiResult类的问题。

@objc class ApiResult:NSObject {
var success:Bool?
var message:String?
}

并在XXX-swift.h文件中

SWIFT_CLASS("_TtC16RemoteController9ApiResult")
@interface ApiResult : NSObject 
@property (nonatomic, copy) NSString * _Nullable message;
- (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
@end

缺少success属性。重建&干净的构建不起作用。

为什么会发生这种情况

1 个答案:

答案 0 :(得分:3)

Objective-C不支持选项。从Swift到Objective-C的桥接允许类类型的选项,因为它们只是在ObjC侧转换为else if。但是,nil是一种原始类型,在Objective-C中没有Bool布尔值。