Прокрутка 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
должна работать по умолчанию в вашем сценарии. Если вы создадите тестовый проект с только иерархией представлений, как описано, вы увидите, что это так. Итак, сравните их и посмотрите, какая разница влияет на прокрутку.