访问 swift 中 objective-c header 的 getter 属性
accessing getter properties from objective-c header in swift
在 objective-c header 中我们有一个 属性 像这样:
@property (nonatomic,assign,getter=isMyThingEnabled) BOOL enableMyThing;
在 swift 中,任何像这样访问此 属性 的尝试都会生成一个错误,即找不到 属性:
myClassInstance.isMyThingEnabled
那么如何访问 swift 中的 属性 isMyThingEnabled?
即使您在中为 getter 方法定义了自定义名称
Objective-C,来自 Swift 的访问仍然使用
属性 名称,所以这有效:
let enabled = myClassInstance.enableMyThing
您可以定义一个 getter 来自定义此 属性 的行为和返回值,但您应该使用 属性 名称,而不是 getter 名称, getter 应自动调用
在 objective-c header 中我们有一个 属性 像这样:
@property (nonatomic,assign,getter=isMyThingEnabled) BOOL enableMyThing;
在 swift 中,任何像这样访问此 属性 的尝试都会生成一个错误,即找不到 属性:
myClassInstance.isMyThingEnabled
那么如何访问 swift 中的 属性 isMyThingEnabled?
即使您在中为 getter 方法定义了自定义名称 Objective-C,来自 Swift 的访问仍然使用 属性 名称,所以这有效:
let enabled = myClassInstance.enableMyThing
您可以定义一个 getter 来自定义此 属性 的行为和返回值,但您应该使用 属性 名称,而不是 getter 名称, getter 应自动调用