Прокрутка UITableView внутри UIScrollView

У меня есть UITableView, который является подзоном для UIView, а затем UIView является подпунгом a UIScrollView. Как определить касания, которые должны прокручиваться UITableView?

UITableView может получать события выбора элементов (ячейка в таблице выбрана/отобрана) просто отлично, за исключением того, что вы должны удерживать ячейку перед ее запуском. Но я не могу получить прокрутку UITableView, всегда она UIScrollView, которая реагирует на жест панорамы.

Любая помощь приветствуется. Спасибо заранее!

EDIT: Решился, хотя я задал неправильный вопрос. Он работает по умолчанию, как отметил Роман К. Я думаю, что проблема связана с наличием части UITableView вне границ UIScrollView (UITableView перешла к нижним границам UIScrollView). Правильно установите его внутри UIScrollView.

Ответ 1

Пожалуйста, убедитесь, что UIScrollView's свойства delaysContentTouches и canCancelContentTouches установлены соответствующим образом. Они контролируют, как экземпляр UIScrollView передает сенсорную информацию в свои подзоны. По умолчанию для параметра delaysContentTouches установлено значение YES. Кроме того, убедитесь, что, если вы расширили UIScrollView, touchesShouldBegin:withEvent:inContentView:, разрешите касания в подвью.

В противном случае прокрутка UITableView должна работать по умолчанию в вашем сценарии. Если вы создадите тестовый проект с только иерархией представлений, как описано, вы увидите, что это так. Итак, сравните их и посмотрите, какая разница влияет на прокрутку.