【iOS 지식 학습】tableview 미끄러질 때 그림 불러오는 느린 해결 방법

1246 단어
테이블뷰의 모든cell에서 서버에서 데이터를 가져와야 하기 때문에 매번 미끄러질 때마다 데이터를 불러와서 셀을 표시한다. 그러면 시스템이 잘 작동하지 않고 제3자의 라이브러리SDWebImage를 활용하면 이 문제를 해결할 수 있다.
(1,) 이전에 내가 사용한 그림을 얻는 방법은:
NSData *data = [NSData dataWithContentsOfURL:url];
    if(data!=nil)
    {
        UIImage *aimage = [[UIImage alloc] initWithData:data];    
        cell.hotelImage.image = aimage;    
    }

이런 방식은 그림을 얻은 후에cell을 표시하여 시스템 카드를 죽게 하는 것이다...
(2) 나중에 다음과 같은 방법을 사용했다.
1. 창고를 공사에 넣는다.
2. 라이브러리의 헤더 파일을 가져옵니다. #import "UIImageView+WebCache.h";
3.
- (UItable View Cell *) table View: (UItable View *) tableView cell ForRowAt IndexPath: (NSIndexPath *) indexPath 함수에 그림을 로드할 때 사용
[cell.imageViewsetImageWithURL:[NSURLURLWithString:url]placeholderImage:nil];여기의nil도 기본적인 그림으로 바꿀 수 있습니다. 이렇게 하면 시스템이 비교적 원활하게 작동할 수 있습니다. 그림은 비동기적으로 불러오기 때문에 불러오기가 완료되면 바로 캐시에 넣고 다음에는 서버와 통신하지 않습니다.
이 방법은 다음과 같은 몇 개의 프레임워크를 추가해야 합니다.
ImageIO.framework;
CoreImage.framework;
MapKit.framework.
(3.) 인터넷상에서 선배가 - (void)tableView: (UItableView*)tableViewwillDisplayCell: (UItableViewCell*)cell for RowAtIndexPath: (NSIndexPath*)indexPath 방법은 테스트한 후에 매번 1,2장의 그림만 불러오고 대부분의 그림은 불러오지 않습니다. 제 코드 원인이 이 방법의 원인인지 모르겠습니다.

좋은 웹페이지 즐겨찾기