Требования к операционной системе: 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
См. также: