오늘의 결과 화면입니다.
url로부터 다운로드한 이미지를 imageView에 할당하는 방법은 이전 글에서 설명했습니다.
하지만 이 방법은 다운로드 속도가 매우 느립니다.
Image View의 확장을 통해서 이미지 다운로드 속도를 개선해보겠습니다.
[Step 1] UIImageView 파일 생성하기
[Step 2] Image View 확장하기
코드
extension UIImageView {
func downloadImage(url: URL) {
DispatchQueue.global().async {
if let data = try? Data(contentsOf: url) {
if let image = UIImage(data: data) {
DispatchQueue.main.async {
self.image = image
}
}
}
}
}
}
[Step 3] 확장한 코드 적용하기
// url 변수의 타입은 URL입니다.
imageView.downloadImage(url: url)
// 예시
homeTeamImageView.downloadImage(url: leagueScheduleTableViewCellModel.homeTeamImageUrl)
이 방법이 속도가 더 빠른 이유는 멀티스레드 환경에서의 각각의 이미지를 병렬로 다운로드했기 때문입니다.
이 부분은 차후에 다시 정리하겠습니다.
※ 참고 출처
'Code Base > Image Download' 카테고리의 다른 글
[iOS] url로 부터 이미지 다운로드하기 (0) | 2022.02.04 |
---|