如何通过json解析在表格单元格中显示图像

NSURL *url = [NSURL URLWithString:@"yourimage"]; NSData *data = [NSData dataWithContentsOfURL:url]; UIImage *img = [[[UIImage alloc] initWithData:data] autorelease]; 

我用这个代码获取图像,但如何在表格单元格中显示它。

尝试这个,

 - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { static NSString *CellIdentifier = @"Cell"; UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier]; if (cell == nil) { cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease]; } NSURL *url = [NSURL URLWithString:[imageArray objectAtIndex: [indexPath row]]]; NSData *data = [NSData dataWithContentsOfURL:url]; UIImage *img = [[[UIImage alloc] initWithData:data] autorelease]; [[cell imageView] setImage:img]; return cell; } 

FirstLy您需要在iOS应用程序中解析该JSON文件。 我猜你从图像的JSON获得了一些URL,所以你需要下载图像表格,这个图形表格可以在任何UIIMageView上设置IMage,你可以将UIIMageView设置为UITablViewCell的内容视图。

在这里你需要管理一个假设你有许多图像要下载forms特定的路径。所以你应该照顾的UI交互也在这里是如何从URL下载图像和设置下载图像的良好示例UIImageView并将UIImageView设置为UITableViewcell的ContentView。在此示例中,您还将看到如何通过TableViewcEll添加这些图像的方法。

这是这个例子的链接

我希望它可以帮助你。

你可以做到

 UITableViewCell *cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:@"Cell"]; [[cell imageView] setImage:img]; 

但这可能不会很好地运行,因为你同步下载图像,这很可能使你的应用程序口吃。

您应该对图像使用延迟加载,例如,请查看http://developer.apple.com/library/ios/#samplecode/LazyTableImages/Introduction/Intro.html

这对我有用:

 NSURL *url = [NSURL URLWithString:[aTweet objectForKey:@"profile_image_url"]]; NSData *imgData = [NSData dataWithContentsOfURL:url]; cell.imageView.image = [UIImage imageWithData:imgData];