2012-05-30 2 views
0

Я думаю, что нашел ошибку, аналогичную выпуску 104выпуск с пользовательским ярлыком

У меня есть гистограмма. Моя ось фиксирована с ограничением, и я использую пробел слева на моей области графика и пользовательскую метку для моей оси X.

Это импорт, чтобы показать последние полосы, чтобы мой xRange начинается с конца с кодом ниже

plotSpace.xRange = [CPTPlotRange plotRangeWithLocation:CPTDecimalFromFloat([[posicoes lastObject] floatValue]) length:CPTDecimalFromFloat(tipoEscalaGrafico*60*13)]; 

Все работает отлично, за исключением от лейбла.

На отпечатке ниже вы можете увидеть проблему

http://3.bp.blogspot.com/-BLWrnrZ1MZY/T8aMqEc3PzI/AAAAAAAAAG8/sXhIgvuuj_0/s1600/Captura+de+Tela+2012-05-30 + s + 18.05.01.png

Ярлык не уважает отступы.

Если я прокручивать график затем соблюдать ниже заполнение в виде экрана

http://1.bp.blogspot.com/-uvFem8xERAo/T8aMmaLRl2I/AAAAAAAAAG0/DZx_UwCcmbA/s1600/Captura+de+Tela+2012-05-30 + As + 18.05.01 + (2) .png

+0

Как вы создали пользовательский ярлык? –

+0

Использование этого метода –

ответ

0

У меня есть класс, который наследует от CPTXYGraph и я сделал метод ниже, чтобы добавить пользовательскую labl = ELS

-(void)setarLabelsEixoX:(NSArray *)labels naPosicao:(NSArray *)posicaoLabels;{ 
CPTXYAxisSet *axisSet = (CPTXYAxisSet *)self.axisSet; 
CPTXYAxis *x   = axisSet.xAxis; 

x.labelingPolicy = CPTAxisLabelingPolicyNone; 
NSUInteger labelLocation  = 0; 
NSMutableArray *customLabels = [NSMutableArray arrayWithCapacity:[labels count]]; 
for (NSNumber *tickLocation in posicaoLabels) { 
    CPTAxisLabel *newLabel = [[CPTAxisLabel alloc] initWithText:[labels objectAtIndex:labelLocation++] textStyle:x.labelTextStyle]; 
    newLabel.tickLocation = [tickLocation decimalValue]; 
    newLabel.offset  = x.labelOffset; 
    newLabel.alignment = CPTAlignmentCenter; 
    [customLabels addObject:newLabel];   
} 

axisSet.xAxis.majorTickLocations = (NSSet*)posicaoLabels; 
x.axisLabels = [NSSet setWithArray:customLabels]; 

}

+0

Является ли 'posicaoLabels' массивом или множеством? Я не думаю, что вы можете отнести его к другому типу. –

0

Я сделал небольшое тестирование с последнем основным кодом участка. Я не вижу проблемы. Вы подтвердили, что местоположение метки ошибочного ярлыка фактически находилось вне диапазона графика? Какую версию Core Plot вы используете?

+0

Да, как вы можете видеть на распечатке, местоположение галочки для значения «16» находится за пределами диапазона графика, потому что я установил некоторое пробел в левом пространстве. Я использую версию 1.0. Не могли бы вы прислать мне свой тестовый проект? поэтому я могу проверить, что я делаю неправильно. –

+0

Добавьте следующее заявление в демонстрацию политики маркировки в приложении «Галерея графики»: «plotSpace.allowsUserInteraction = YES;». Я экспериментировал с расположением этикеток, начиная ярлыки за пределами диапазона осей на обоих концах, и он работал, как ожидалось. –

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