Haram앱을 개발하던 중에 UICollectionView의 delegate함수인 didSelect함수가 동작하지않는 이슈를 범했다
UICollectionView의 Cell내부의 contentView에 UI를 안넣지도 않았고 UI가 겹쳐 눌려지지않는 점도 없었는데 이를 해결하는데 의문점이 가득했다
헌데 웃긴점은 롱 제스처처럼 꾹 눌렀을 경우에는 동작하는 의아한 상황이 발생했다
private let tapGesture = UITapGestureRecognizer(target: LibraryViewController.self, action: nil)
view.addGestureRecognizer(tapGesture)
기존 코드를 확인하면 커스텀 제스처는 view에 등록이 된 상황이다
UITapGestureRecognizer같은 경우 디폴트값으로 cancelTouchsInView라는 속성이 True값이였는데 이는 해당 UI에 제스처가 인식될때 해당 뷰에 이를 전달할것인지에 대한 속성이다.
-> 나같은 경우 해당 속성을 false로 변경해주지않아서 view의 서브뷰로 있던 UICollectionView의 Cell에 대한 제스처가 제대로 받아오지못해서 발생한 문제였다
private let tapGesture = UITapGestureRecognizer(target: LibraryViewController.self, action: nil).then {
$0.cancelsTouchesInView = false
}