나는 내 자신을 설명하려고 노력할 것이다. 연락처 목록이있는 테이블 뷰 (모델은 Contact
개체의 배열)를 보여주는 ContactsViewController
을 가지고있다. 셀이 연락처의 이미지를 표시합니다.사용자가 테이블을 스크롤해도 UITableViewCell에 이미지를 채우는 방법
현재 내가 셀의 UIImageView
이있다 채우기 위해 무엇을 :
가 1. 나는 Contact
이미지 속성 게터 무시 - 나는 내가로 설정 이미지 다운로드를 완료 할 때 다음
- (UIImage *)contactImage
{
if (!_contactImage) {
_contactImage = [[UIImage imageNamed:@"placeHolder.png"] retain];
[self asyncDownloadContactImageFromServer];
}
return _contactImage;
}
을 재산과 나는
ContactUpdatedImageNotification
를 배치한다.내
ContactsViewController
이 알림을 받고이 연락처의 셀을 다시로드하면 다운로드 한 이미지가 셀의 imageView로 설정됩니다.
이 결과는 사용자가 테이블보기를 스크롤하는 동안 UI를 차단하지 않고 이미지를 양호하게 비동기로 가져 오는 것입니다.
BUT 사용자가 테이블 뷰를 스크롤하고 새로운 셀을 공개하면 새 셀의 이미지가 예상대로 다운로드되지만 셀의 imageView는 사용자가 픽업 할 때까지 새 다운로드 이미지로 업데이트되지 않습니다. 그의 손가락.
다른 스레드에서이 효과를 만들기 위해 뭔가를해야한다고 생각했는데 어떻게 될지 모르겠습니다.
감사하지만 링크가 깨졌습니다 – Eyal
이 링크를 사용하십시오 ..... >> http://www.raywenderlich.com/multithreading-and-grand-central-dispatch-on-ios-for-beginners- 튜토리얼 – Nit
잘 작동하고 있습니다 ... – Nit