在Objective-C绑定库中重写方法时是否需添加Export属性?
重写绑定库方法时是否需要添加Export属性?
不需要给重写的方法添加[Export]属性,原因如下:
- 绑定库中的
[Export]已经完成了Objective-C方法签名(shouldRenderAsCluster:atZoom:)与C#方法名(ShouldRenderAsCluster)的映射 - 子类重写该方法时,Xamarin会自动沿用父类已有的方法签名映射逻辑,无需重复添加
Export属性 - 重复添加反而可能引发冲突,导致Objective-C端识别到多个同名方法签名,进而触发运行时错误
你的重写代码只需要遵循标准C#重写格式即可:
public override bool ShouldRenderAsCluster(ICluster cluster, float zoom) { // 自定义逻辑实现 return base.ShouldRenderAsCluster(cluster, zoom); }
内容的提问来源于stack exchange,提问作者o_w
相关产品推荐
相关产品推荐

