2014-09-10 212 views
0

所以我使用core-plot,我必須覆蓋CPTLayer中用於CPTAxisLabel的方法,但不是所有標籤,所以我製作了一個CustomCPTAxisLabel類來執行此操作。 問題是我必須重寫renderAsVectorInContext巫婆是從CPTLayer的方法, CPTAxisLabel繼承CPTLayer和CustomCPTAxisLabel繼承CPTAxisLabel(如下所示:CPTLayer-> CPTAxisLabel-> CustomCPTAxisLabel)。問題是我如何重寫CustomCPTAxisLabel中的CPTLayer方法?如何覆蓋繼承類的方法

回答

0

在子類CustomCPTAxisLabel,定義方法,它要覆蓋renderAsVectorInContext。喜歡的東西

- (空)renderAsVectorInContext:(CGContextRef)上下文{

[super renderAsVectorInContext:context]; 

// Do customisation after this. 

}

您可能會或可能不會選擇在重寫此方法CPTAxisLabel類,但如果你確實打電話給超級班。

+0

我都準備好了,但是這個方法並沒有被調用,我也不知道爲什麼...... – edo 2014-09-10 09:09:33

+0

你可以從_CustomCPTAxisLabel_類發佈一些代碼。此外,您爲其分配對象的代碼。 – Gandalf 2014-09-10 09:35:10

+0

在.H我已#IMPORT 「CPTAxisLabel.h」 接口CustomCPTAxisLabel:CPTAxisLabel - (無效)renderAsVectorInContext:(CGContextRef)上下文; end and in .m @implementation CustomCPTAxisLabel - (void)renderAsVectorInContext:(CGContextRef)context {0;}} {super renderAsVectorInContext:context]; } – edo 2014-09-10 09:58:05