0

我有一个 URL 数组,这个数组是 JSON 解析的结果

    id=[s valueForKey:@"bid"];

    title=[s valueForKey:@"btitle"];

   author=[s valueForKey:@"author"];

    price=[s valueForKey:@"price"];

    image=[s valueForKey:@"image"];

在这里显示该图像数组(带有 URL 的数组到 tableviewcell 中)我将该数组转换为该单元格内的 NSdata-for row index() 方法,例如

NSData *imageData= [[NSData alloc] initWithContentsOfURL:[NSURL URLWithString:[image objectAtIndex:indexPath.row]]];

所以然后我使用该图像数据在 tableviewcell 中显示图像..但是无论如何以数组格式显示内容,这样我就可以轻松使用它。

我想要以下格式的相同数组,

NSARRAY *a=[[ NSARRAY alloc]initWithObjects:[UIimage imagenamed:@"url1"],[UIimage imagenamed:@"url2"],nil];

有没有办法将该数据格式转换为数组格式?请帮我

4

2 回答 2

1

使用此代码将图像数据存储到数组中...

NSMutableArray *imagesArray = [[NSMutableArray alloc] init];
    for(int i = 0; i < [image count]; i++)
    {
        NSData *imageData= [[NSData alloc] initWithContentsOfURL:[NSURL URLWithString:[image objectAtIndex:i]]];
        [imagesArray addObject:[UIImage imageWithData:imageData]];
    }

编辑:

您必须使用此代码,您从字典中获取图像网址,但不是在 cellForRowAtIndexPath() 方法中...(简单地说,在到达 cellForRow..() 方法之前,您需要这样做

于 2013-03-12T04:26:24.643 回答
0

使用Linq-to-ObectiveC select 方法,您可以将字符串数组转换为图像数组,如下所示:

NSArray* images = [urls select:^id(id url) {
    return [UIImage imageWithData:[NSData dataWithContentsOfURL:[NSURL URLWithString:url]]];
}];
于 2013-03-12T06:20:02.770 回答