2012-12-05 2 views
0

CPTScatterPlot의 각 인덱스에 대해 "맞춤 라벨"을 표시하려고합니다. CPTTextLayertextStyle 속성에서 텍스트 색상, 글꼴 크기 등을 가져옵니다. CPTTextLayer에 표시되는 문자열의 각 문자를 다른 색상으로 표시하려고합니다. NSAttributedString을 사용하는 것이 가능하다는 것을 알고 있지만이 인수를 [[CPTTextLayer alloc] initWithText:attributedStr]에 전달하면 응용 프로그램이 다운됩니다. 텍스트 CPTTextLayer'sNSAttributedString을 적용 할 수 있습니까?CPTTextLayer의 텍스트에 NSAttributedString을 적용 할 수 있습니까

+1

CPTTextLayer 란 무엇입니까? – NANNAV

답변

0

코어 플롯은 현재 속성이 지정된 텍스트를 지원하지 않습니다. Core Plot issue tracker에 기능 향상 요청을 추가하여이 기능이 향후 버전에 포함되도록 고려할 수 있습니다.

3

버전 1.3부터 ​​CorePlot은 NSAttributedString을 기반으로 CPTTextLayer를 만들 수 있습니다. 또한 멀티 라인 CPTTextLayer 라벨이 제대로 작동

NSString *smallTextPart = @"Small part "; 
NSString *bigTextPart = @"and the bigger one"; 

NSMutableAttributedString *str = [[NSMutableAttributedString alloc] initWithString:[NSString stringWithFormat:@"%@%@", smallTextPart, bigTextPart]]; 

[str addAttribute:NSFontAttributeName value:[UIFont fontWithName:@"HelveticaNeue" size:12.0] range:NSMakeRange(0, smallTextPart.length)]; 
[str addAttribute:NSFontAttributeName value:[UIFont fontWithName:@"HelveticaNeue-Bold" size:18.0] range:NSMakeRange(smallTextPart.length, bigTextPart.length)]; 

CPTTextLayer *txtLayer = [[CPTTextLayer alloc] initWithAttributedText:str]; 

는 (당신은 '\ n을'문자를 사용하여 별도의 라인으로 CPTTextLayer을 분할 할 수 있습니다) 다음은 예입니다.

건배.

관련 문제