Skip to content

관광명소 검색화면에서 빠르게 스크롤 시 적합한 관광명소 이미지를 보여주지 못하는 문제

HanjunYu edited this page Nov 29, 2021 · 3 revisions

문제 상황

  • 관광명소 화면을 CollectionView로 구성하였고 UIImageView에 Extension으로 URLSessionDataTask를 통해 이미지를 다운로드하게 구현했었다.
  • CollectionView의 Cell이 불러오면서 다운로드를 진행하는데 CollectionViewCell은 재사용이 되기 때문에 이미지가 다운로드가 완료된 시점에 이미지를 띄워서 이미지와 관광명소의 제목이 맞지 않는 문제가 발생했다.

문제 해결

  • CollectionView가 Cancel이 가능한 Cancellable 프로토콜을 채택한 변수를 가지고 있게 만들었다.
  • URLSessionDataTask에 Cancellable 프로토콜을 채택하고 cancel함수를 구현했다.
  • CollectionView Cell의 prepareForReuse 함수에서 cancellable Property를 cancel해주었다. 이러한 방식으로 구현하면 다운로드가 완료되지 않은 task들은 다운로드가 취소되어 완료된 이미지들만 일치하는 제목의 Cell에 그려진다.

수인분당선

규칙

프로젝트

기술 특장점

데일리 스크럼

1주차
2주차
3주차
4주차
5주차
6주차

회고

회의록

1주차
2주차
3주차
4주차
5주차
6주차

멘토링

기술 공유

트러블슈팅

더보기

데모 영상

Clone this wiki locally