Objective-C クラスの Swift サブクラスでオーバーライドすると、次のようなメッセージが表示されます。
プロパティ タイプ 'BOOL' (別名 'bool') は、'ChildClass' から継承されたタイプ 'Boolean' (別名 'unsigned char') と互換性がありません
他のブール型を使用しようとしましたが、うまくいきません。
Swift で Objc BOOL を適切にオーバーライドする方法
Swift コード (サブクラス):
override var myVar: Bool {
get {
return something ? true : myVar
}
set {
myVar = newValue
}
}
オブジェクトの親宣言:
@property(atomic) Boolean isLoading;
警告が表示される Swift ブリッジング ヘッダー:
SWIFT_CLASS("_TtC6Module30ChildClass")
@interface ChildClass : ParentClass
@property (nonatomic) BOOL myVar; //<----- Here
@end