Отрисовка маркера точки ряда

Требования к операционной системе: iOS 5.0 и выше.

Мобильное устройство: iPad.

Описание

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

Исходный код

Для выполнения примера необходимо разместить взамен метода chartTouchesTapInView: withPoint: класса ViewController (см. раздел «Градиентная заливка диаграммы») следующий код:

// Обрабатываем событие нажатия на область таблицы
- (void )chartTouchesTapInView:(UIView *)v withPoint:(CGPoint)point{
    // Получаем ряд данных
    ChartSeries *series = [chart seriesList][0];
    // Получаем точку ряда данных
    LinePoint *lPoint = [[series points] objectForKey:[NSNumber numberWithInt:4]];
    // Получаем маркер точки ряда
    ChartMarker *marker = [lPoint marker];
    // Создаем объекты области и точки в этой области
    CGRect r = CGRectMake(50, 50, 200, 200);
    CGPoint p = CGPointMake(150, 150);
    // Получаем признак того, попадает ли указанная точка в область маркера в указанной области
    BOOL b = [marker markerWithRect:r containsPoint:p];
    NSLog(@"%@ %hhd",@"Признак того, что указанная точка попадает в область маркера в указанной области:", b);
    // Определяем пользовательское представление
    CustomView *cView = [CustomView new];
    // Устанавливаем диаграмму
    [cView setChart:chart];     // Устанавливаем область отрисовки представления     [cView setFrame:CGRectMake(130, 200, 200, 200)];     // Отрисовываем представление     [[self view] addSubview:cView]; }

Нажмем на область диаграммы.

В результате будут отрисованы дополнительные маркеры:

Также в консоли среды разработки будет выведено сообщение о нахождении точки в указанной области маркера:

Признак того, что указанная точка попадает в область маркера в указанной области: 1

См. также:

Примеры использования компонентов