Iphone 下载数据以填写“;占位符;在另一个线程上的UITableViewCell中防止延迟
我拥有的是一个带有UITableViewController的应用程序,其中填充了自定义UITableViewCells。我有一些数据可以提供给手机,但是我需要下载一些额外的内容(图片等) 因此,我在viewDidLoad方法中所做的是,初始化一个UITableViewCell对象,用我已有的信息填充所有标签。然后我启动cell类的一个方法来下载数据。处理完特定的单元格后,我将其放入NSMutableArray并继续处理下一个单元格 然后在cellForRowAtIndexPath方法中,我从可变数组返回特定索引处的单元格 发生的事情是,直到所有的数据都没有下载,我的tableView被卡住了。。。我不确定这是否是正确的方法,但我认为我必须启动一个方法,下载额外的内容,然后在另一个线程上填充到单元格中。我该怎么做Iphone 下载数据以填写“;占位符;在另一个线程上的UITableViewCell中防止延迟,iphone,ios,multithreading,uitableview,Iphone,Ios,Multithreading,Uitableview,我拥有的是一个带有UITableViewController的应用程序,其中填充了自定义UITableViewCells。我有一些数据可以提供给手机,但是我需要下载一些额外的内容(图片等) 因此,我在viewDidLoad方法中所做的是,初始化一个UITableViewCell对象,用我已有的信息填充所有标签。然后我启动cell类的一个方法来下载数据。处理完特定的单元格后,我将其放入NSMutableArray并继续处理下一个单元格 然后在cellForRowAtIndexPath方法中,我从可
提前多谢 正如rckoenes所建议的那样,使用AFNetworking works!:)我认为,对于那些仍然没有ARC的人来说,另一种选择将是一种迫切的要求 以下是我下载图像的代码:
-(void)getImageFromUrl:(NSURL *)url{
NSURLRequest *request = [NSURLRequest requestWithURL:url];
AFImageRequestOperation *op = [AFImageRequestOperation imageRequestOperationWithRequest:request imageProcessingBlock:nil success:^(NSURLRequest *request, NSHTTPURLResponse *response, UIImage *img) {
[self.image setImage:img];
} failure:^(NSURLRequest *request, NSHTTPURLResponse *response, NSError *error) {
}];
[op start];
}
想要一个简单的解决方案吗?使用时,它们有一个用于UIImageView
的特殊扩展类。您只需调用[imageView setImageWithURL:imageURL]代码>所有操作都在sperate线程中完成,NSURLCache
用于缓存。