2016-06-22 10 views
0

で迅速なクラスを使用します。私はXXX-swift.hファイルとブリッジヘッダーファイルを作成しました。ほとんどの高速ファイルは完璧に動作していますが、私はAPiResultクラスの問題を発見しました。そこは、私はObjective Cのクラスからスウィフトクラスを使用したい私のプロジェクトの一つでにObjCプロジェクト

@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プロパティが不足しています。再構築&クリーンビルドが機能しませんでした。

なぜこのようなことが起こるのですか

答えて

3

Objective-Cはオプションをサポートしていません。 SwiftからObjective-Cへのブリッジは、ObjC側でnilに変換されるだけなので、クラス型のオプションを許可します。しかし、Boolはプリミティブ型であり、Objective-Cにはnilブール値のようなものはありません。

+0

ありがとうございます、私の問題を完全に処理します。 – Castiel

関連する問題