iOS Core Plot — обнаружение жеста смахивания на графике

Я использую Core Plot для отображения графика рассеяния, и я хотел бы использовать жест прокрутки для переключения между самим графиком и UITableView данных, из которых состоит график. Мой UISwipeGestureRecognizer отлично работает в представлении таблицы, но события считывания не запускаются на графике. График представляет собой UIView с классом, установленным на CPTGraphHostingView, и мой код выглядит следующим образом:

UISwipeGestureRecognizer *swipeRight = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(swipeHistoryData:)];
[swipeRight setDirection:UISwipeGestureRecognizerDirectionRight];
[graphHostingView addGestureRecognizer:swipeRight];
[tableListView addGestureRecognizer:swipeRight];

Я предполагаю, что CPTGraphHostingView каким-то образом «съедает» салфетки, поэтому они не обнаруживаются моим распознавателем. Кто-нибудь может прокомментировать или поставить меня на правильный путь?


person Jonathan Wareham    schedule 28.06.2012    source источник
comment
graphHostingView установили ли вы свойство взаимодействия с пользователем?   -  person lu yuan    schedule 28.06.2012


Ответы (1)


Извините, только что понял - я добавлял один и тот же распознаватель жестов как в представление графика, так и в представление таблицы. Я всегда забываю, что это не работает - потому что он был добавлен в табличное представление после графического представления, только табличное представление получает события. Мне нужно использовать 2 распознавателя жестов (если кто-то не скажет мне другое).

person Jonathan Wareham    schedule 28.06.2012
comment
Я думаю, что если вы включите взаимодействие с пользователем в графическом представлении, он распознает жест. - person lu yuan; 28.06.2012
comment
Все в порядке, взаимодействие с пользователем включено. Просто 1 распознаватель жестов может быть одновременно подключен только к 1 элементу управления представлением. Мне нужно использовать 2 распознавателя. - person Jonathan Wareham; 28.06.2012
comment
Добавлено ли представление графика к представлению таблицы? Вы хотите, чтобы и табличное представление, и график обнаруживали жест смахивания, когда вы проводите по графическому представлению? Что вы действительно хотите получить? - person lu yuan; 28.06.2012
comment
Я решил свою проблему благодаря использованию отдельного распознавателя для графика и таблицы. Я только что обновил свой код выше, чтобы показать полный код, который я использовал. Я забыл, что распознаватель может быть прикреплен только к 1 представлению, поэтому в приведенном выше коде он сначала был установлен для графика, но затем он перемещается в таблицу, поэтому график больше не запускает события жестов. - person Jonathan Wareham; 28.06.2012