2011-12-20 1 views
2

Как загрузить асинхронные множественные изображения в UITableView с использованием ASIHttpRequest или что-то полезное?Загрузите асинхронные множественные изображения в UITableViewView?

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

     // Creation 
     UIImageView *avatar; 
     UILabel *content; 

     // Tag the IBOutlets 
     avatar = (UIImageView*)[cell viewWithTag:14]; 
     content = (UILabel*)[cell.contentView viewWithTag:4]; 

     // Field 
     avatar.image = image 
     content.text = entryReviewtableView.content; 
} 

ответ

6

Нет необходимости вводить зависимость в целом структуры, такие как ASIHTTPRequest просто загрузить одно изображение, когда вы можете сделать это несколько простых строк кода с помощью НОД:

dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{ 
    NSData *imageDate = [NSData dataWithContentsOfURL:imageURL]; 
    UIImage *image = [UIImage imageWithData:imageData]; 
    dispatch_async(dispatch_get_main_queue(), ^{ 
     avatar.image = image; 
    }); 
}); 

Это асинхронный и все доброта. Но в нескольких строках кода вы можете писать, понимать, исправлять ошибки, расширять и поддерживать себя.

0

Вы можете использовать асинхронный образ изображения вместо изображения по умолчанию. для справки вы можете посетить учебное пособие Here.

0
UIImageView *imgV=[[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 1024, 748)]; 

    ASIHTTPRequest *req=[ASIHTTPRequest requestWithURL:[NSURL URLWithString:[Array objectAtIndex:indexPath.row]]]; 
    [req setUsername:[NSString stringWithFormat:@"%i",i]]; 
    [req setUserInfo:[NSDictionary dictionaryWithObjectsAndKeys:imgV,@"imgV",nil]]; 
    [req setDelegate:self]; 
    [req startAsynchronous]; 
    //[imgV setContentMode:UIViewContentModeScaleToFill]; 
    [imgV setContentMode:UIViewContentModeScaleAspectFit]; 
    //[imgV setClipsToBounds:YES]; 
    [imgV setTag:kTagImageViewInScrollView]; 
    [cell addSubview:imgV]; 

- (недействительными) requestFinished: (ASIHTTPRequest ) запрос { [(UIImageView) [[запрос UserInfo] valueForKey: @ "imgV"] setImage: [UIImage imageWithData: [запрос responseData]]];

[(UIActivityIndicatorView*) [(UIScrollView*) [scr viewWithTag:([[request username] intValue]+1)] viewWithTag:kActTag] removeFromSuperview]; 

}