Как я могу получить изображение за метками на моем графике.Мне удалось поместить изображение перед графиком:
CPTPlotSpaceAnnotation *imageAnnotation;
CGRect imageRect = CGRectMake(0, 0 , 480, 320);
CPTBorderedLayer * ImageLayer = [[CPTBorderedLayer alloc] initWithFrame:imageRect];
ImageLayer.fill = [CPTFill fillWithImage:[CPTImage imageWithCGImage:[[UIImage imageNamed:@"Overlay_3_digits.png"] CGImage]]];
imageAnnotation = [[CPTPlotSpaceAnnotation alloc] initWithPlotSpace:plotSpace anchorPlotPoint:nil];
imageAnnotation.contentLayer = ImageLayer;
[graph addAnnotation:imageAnnotation];
[graph addSublayer:ImageLayer];
[newImagelLayer release];
[imageAnnotation release];
, добавив изображение с помощью [graph insertSubLayer: ImageLayer ниже: y];не работает, это также ставит изображение перед графиками и осевыми метками.Надеюсь, кто-нибудь может мне помочь.
РЕДАКТИРОВАТЬ: я добавил скриншот из симулятора.Три черных прямоугольника должны быть перед моими графиками и позади моих этикеток.Ярлыки будут читаться легче.
Я также отредактировал иерархию слоев из моего графика, поместив метки оси в первый индекс:
NSArray *chartLayers = [[NSArray alloc] initWithObjects:[NSNumber numberWithInt:CPTGraphLayerTypeAxisLabels],
[NSNumber numberWithInt:CPTGraphLayerTypePlots],
[NSNumber numberWithInt:CPTGraphLayerTypeMajorGridLines],
[NSNumber numberWithInt:CPTGraphLayerTypeMinorGridLines],
[NSNumber numberWithInt:CPTGraphLayerTypeAxisLines],
[NSNumber numberWithInt:CPTGraphLayerTypeAxisTitles],
nil];
graph.topDownLayerOrder = chartLayers;
Я также нашел лучший способположить мое изображение внутри графика.Я сделал это с помощью нового слоя хоста:
CPTAnnotationHostLayer *newHostLayer = [[CPTAnnotationHostLayer alloc]
initWithFrame:CGRectMake(0, 0, 480, 220)];
UIImage * annotationBG = [UIImage imageNamed:@"Overlay_3_digits.png"];
newHostLayer.backgroundColor = [UIColor colorWithPatternImage:annotationBG].CGColor;
Есть какие-нибудь идеи, как я могу поместить изображение трех черных треугольников сзади моих этикеток и перед графиками?