假设我们NSMeasurement
在项目中有一个类别。
.h文件(.m文件也存在):
NSMeasurement+Test.h
@interface NSMeasurement (Test)
- (NSString *)foo;
@end
现在让我们进一步假设我们有一个Swift类,我们要在其中使用category方法foo
。这里的问题是,NSMeasurement
它将被“转换”为Swift中的Measuement类。是的,类别标题已插入Brinding标题文件中。
问题是:尽管已迅速将其“突变”为Measurement类,但如何访问NSMeasurement函数“ foo”?
任何帮助,将不胜感激。
您必须使用NSMeasurement
,也可以将强制类型Measurement
输入NSMeasurement
。
let measurement = Measurement(value: 20, unit: Unit(symbol: "kg")) as NSMeasurement
let value = measurement.foo()
print(value)
根据文档 NSMeasurement
可以桥接,Measurement
但实际上它们是分开的东西。NSMeasurement
是一个class
同时Measurement
是一个struct
。
如果它是同一个类,那么它是直接实现。例如:如果您创建UITableView
in的扩展,Objective C
则可以直接访问in中的扩展方法Swift
。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句