2010-07-25 4 views
1

У меня есть ядро-участок графика, как это:Как добавить ярлык на участок

graph http://img413.imageshack.us/img413/8347/img0157h.jpg

Как я могу добавить метку для каждого из этих участков. Я видел некоторые ссылки на добавление CPTextLayer к графику, но не мог понять, как это сделать. Есть ли пример, на который меня могут навестить?

ответ

3

я был в состоянии добавить три метки в верхней части графика, как это:

CPTextStyle *textStyle1 = [CPTextStyle textStyle]; 
textStyle1.color = [CPColor blueColor]; 
textStyle1.fontSize = 14; 
CPTextStyle *textStyle2 = [CPTextStyle textStyle]; 
textStyle2.color = [CPColor greenColor]; 
textStyle2.fontSize = 14; 
CPTextStyle *textStyle3 = [CPTextStyle textStyle]; 
textStyle3.color = [CPColor redColor]; 
textStyle3.fontSize = 14; 

CPTextLayer *layer1 = [[[CPTextLayer alloc] initWithText:[NSString stringWithFormat:@"text1"]] autorelease]; 
CPTextLayer *layer2 = [[[CPTextLayer alloc] initWithText:[NSString stringWithFormat:@"text2"]] autorelease]; 
CPTextLayer *layer3 = [[[CPTextLayer alloc] initWithText:[NSString stringWithFormat:@"text3"]] autorelease]; 
layer1.bounds = CGRectMake(-75,2,20,10); 
layer1.textStyle = textStyle1; 
layer2.bounds = CGRectMake(-130,2, 20,10); 
layer2.textStyle = textStyle2; 
layer3.bounds = CGRectMake(-190,2, 20,10); 
layer3.textStyle = textStyle3; 

CPLayerHostingView * newView = [[CPLayerHostingView alloc]initWithFrame:[[UIScreen mainScreen] applicationFrame]]; 
newView.hostedLayer = graph; 
NSInteger count = [graph.sublayers count]; 
[graph insertSublayer:layer1 atIndex: count + 1]; 
[graph insertSublayer:layer2 atIndex: count + 2]; 
[graph insertSublayer:layer3 atIndex: count + 3]; 
self.view = newView; 
[newView release]; 
+0

спасибо за ваш ответ, его действительно помочь мне, но только проблема в том, что, когда я пытаюсь установить цвет и Soze шрифта , его дать мне ошибку "ошибка: объект не может быть установлен - либо свойство readonly, либо нет установленного устройства" что-то делать – Pooja

+0

Мне пришлось использовать CPMutableTextStyle вместо CPTextStyle, чтобы заставить его работать. –

+0

Похоже, что у библиотеки было изменение имени. Было бы здорово, если бы плакат обновил код, чтобы повсюду менять CP на CPT. – 2011-08-03 21:21:15

Смежные вопросы