Выберите табличную ячейку при касании встроенного представления - PullRequest
3 голосов
/ 09 февраля 2010

У меня есть пользовательская табличная ячейка со встроенным MapView, показывающая небольшую область. Когда пользователь выбирает ячейку, я хочу открыть новый вид с увеличенным видом карты и дополнительной информацией, например, расстояние от места, тип карты и т. Д.

Если я оставлю небольшое поле вокруг своего просмотра карты, пользователь может щелкнуть на этом поле, чтобы выбрать ячейку, но как я могу сделать эту ячейку выделенной, если они щелкают внутри вида карты?

С уважением,
-Вегар

Ответы [ 2 ]

7 голосов
/ 09 февраля 2010

Я думаю, вам нужно переопределить метод hitTest, унаследованный от UIView

- (UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event

Этот метод пересекает иерархию представлений, отправляя сообщение pointInside: withEvent: каждому подпредставлениюопределить, какое подпредставление должно получить сенсорное событие.Если pointInside: withEvent: возвращает YES, то иерархия подпредставления пересекается;в противном случае его ветвь иерархии представления игнорируется. Вам редко нужно вызывать этот метод, но вы можете переопределить его, чтобы скрыть сенсорные события от подпредставлений.

1 голос
/ 09 февраля 2010

Попробуйте установить для свойства userIteractionEnabled MapView значение NO

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...