У меня есть представление коллекции баров, которые могут скользить вверх и вниз. Каждая ячейка в представлении коллекции использует UIPanGestureRecognizer
для управления синей полосой, скользящей вверх и вниз. Представление коллекции здесь не прокручивается.
Существует «режим редактирования», который отключает жест панорамирования, управляющий полосами. Надежда здесь в том, что в «режиме редактирования» представление коллекции может прокручиваться влево и вправо.
Моя попытка сделать это состояла в том, чтобы отключить жест панорамирования в каждой из ячеек. Я также пытался использовать методы UIGestureRecognizerDelegate
, чтобы попытаться отключить касания и отказаться от жеста панорамирования ячейки в пользу жеста панорамирования представления коллекции. Кажется, что жест панорамирования представления коллекции не перенаправляется ни на один из вызовов делегата жеста ячейки.
Эти вызовы делегатов подошли мне ближе всего (делегат для жеста панорамирования ячейки):
func gestureRecognizer(gestureRecognizer: UIGestureRecognizer, shouldRecognizeSimultaneouslyWithGestureRecognizer otherGestureRecognizer: UIGestureRecognizer) -> Bool {
return true
}
func gestureRecognizer(gestureRecognizer: UIGestureRecognizer, shouldReceiveTouch touch: UITouch) -> Bool {
return !self.editMode // bar doesn't need to pan in edit mode
}
С этим реализованным я мог бы панорамировать представление коллекции, если бы я начал панорамирование в пустом пространстве между ячейками. Однако запуск кастрюли на ячейке ничего не даст.
РЕДАКТИРОВАТЬ: я загрузил пример проекта проблемы на github.