- CollectionViewCell의 선택여부에 따른 로직을 처리할때 크게 2가지로 나뉜다
-
기본적으로 제공해주는 isSelected값을 override하여 정의해주는 경우
-
커스텀 프로퍼티를 통해 CollectionViewCell의 로직을 정의해주는 경우
1번일 경우
- isSelected프로퍼티를 이용하는 경우 유의해야할점은 2가지가 있다
- 해당 셀의 선택과 미선택에 따른 델리게이트 호출은
func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath)
func collectionView(_ collectionView: UICollectionView, didDeselectItemAt indexPath: IndexPath)
위 2가지 함수를 통해 호출되어진다
- Apple개발문서를 확인해보면 isSelected값을 인위적으로 변경하는것을 추천하지않는다, 즉 위 델리게이트 함수를 이용해서 로직을 구성해야한다
2번일 경우
- 커스텀 프로퍼티를 이용하는 경우는 해당 셀을 선택하였을 때에 델리게이트 함수 중 deselect함수가 호출되지않는다, 반드시 didSelectItemAt함수를 통해 선택되어진 셀의 프로퍼티를 확인하여 구성해주어야한다