Code from highest voted answer can be easily shortened.
Swift 4.1:
final class InteractiveCollectionView: UICollectionView {
override func hitTest(_ point: CGPoint, with event: UIEvent?) -> UIView? {
return super.hitTest(point, with: event) as? InteractiveCollectionView
}
}