简体   繁体   中英

asynchronous UIImageView in custom UITableViewCell

I would like to know how people implement an asynchronous UIImageView loading, if you have it inside a custom UITableViewCell, I've seen quite some examples using GCD, subclassing UIImageView.. all of them must involves NSURLRequest and NSURLConnection. So how do people do this in a subclass of UITableViewCell that has an UIImageView in it?

Look at this category: SDWebImage . It's a image downloader for UIImageView . You place you're image view in your cell, and in the - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath method, just use:

[myImageView setImageWithURL:[NSURL URLWithString:@"example.com/myimage.jpg"]];

I think the simple and ideal way to do this is to do the following steps

  1. Inside cellForRowAtIndexPath: check if the image is available locally load it, else fire off nsurl request to download it in a separate thread and show a loading indicator image.
  2. On completion of request thread, store the image locally reload tableView.

Here is a very good tutorial which explains asynchronous loading in general....

http://www.raywenderlich.com/4295/multithreading-and-grand-central-dispatch-on-ios-for-beginners-tutorial

You can use the same idea to load your image view..

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM