2017-12-05 9 views
0

임 테이블에 제품을 보여주는 간단한 응용 프로그램에서 일하는 임, json API에서 데이터를 가져옵니다. 문제는 이미지를 동기식으로 다운로드하기 때문에 테이블이 느려지 게된다는 것입니다.비동기 이미지 다운 로더 오류 Obj-c SDWebimage

: IM이 문제를 해결하기 위해 SDWebimage 프레임 워크를 사용하려고하지만 난이 오류를 얻을 "이유를 'NSInvalidArgumentException를': '- [UIImageView에 sd_setImageWithURL : placeholderImage :] : 인식 할 수없는 선택기 인스턴스로 전송"

내가 가지고있는 코드 이는 다음과 같습니다

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { 

    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"Cell" forIndexPath:indexPath]; 
    NSDictionary *dictionary = [self.json objectAtIndex:indexPath.row]; 
    cell.textLabel.text=[dictionary objectForKey:@"name"]; 
    cell.detailTextLabel.text = [dictionary objectForKey:@"description"]; 

    //old synchronous code 
    /* NSString *path = [[[[dictionary objectForKey:@"images"] objectAtIndex:0] valueForKey:@"thumb"] valueForKey:@"url"]; 
    NSString *ruta = [NSString stringWithFormat:@"http://18.221.78.126/ecoferia%@",path]; 
    NSURL *url = [NSURL URLWithString:ruta]; 
    NSData *imgData = [NSData dataWithContentsOfURL:url]; 
    cell.imageView.image = [UIImage imageWithData:imgData]; 
    */ 

    //trying to do asynchronous download of the images 
    NSString *path = [[[[dictionary objectForKey:@"images"] objectAtIndex:0] valueForKey:@"thumb"] valueForKey:@"url"]; 
    NSString *ruta = [NSString stringWithFormat:@"http://18.221.78.126/ecoferia%@",path]; 
    [cell.imageView sd_setImageWithURL:[NSURL URLWithString:ruta] 
       placeholderImage:[UIImage imageNamed:@"placeholder.png"]]; 

    return cell; 
} 
또한

내가 SDWebimage이처럼 내 proyect에 설치하고하는 .m 파일에서 가져온 :

#import "SDWebImage/UIImageView+WebCache.h" 

메신저 슈퍼 새로운 목표 - C 그래서 모든 팁을 주셔서 감사합니다. > 기타 링커 플래그 -

감사가 ..

답변

0

이 솔루션은 $를 넣어 빌드 설정에서 (상속). 실무 :