Вы можете добавить его в методы контроллера представления
touchesBegan(_:with:)
touchesMoved(_:with:)
Так что, когда бы пользователь ни взаимодействовал с вашим контроллером представления в любом месте, вы можете предоставить обратную связь, и она будет ограничена только взаимодействием с пользователем, а не когда вы добавляете ячейку программно или вызываете обновление для вашего табличного представления.
Если в вашем контроллере есть и другие компоненты пользовательского интерфейса, и вы хотите ограничить обратную связь своим представлением коллекции, а не другими компонентами, то вы можете проверить представление этими методами.
let touch: UITouch = touches.first as! UITouch
if (touch.view == collectionView){
println("This is your CollectionView")
}else{
println("This is not your CollectionView")
}
Не забудьте вызвать super, чтобы дать системе возможность реагировать на методы.
Надеюсь, это поможет.