11

我是 iPhone 应用程序开发的新手。

当我运行一个示例项目时,我做了一个解析xml提要并在表格视图中显示内容和图像的方法,我收到了这个错误 -

"NSInvalidArgumentException', reason: '-[__NSCFString isFileURL]: unrecognized selector sent to instance 0x712e450'"

仅当我尝试在UITableViewCell.

我用于从中获取图像的代码url是 -

if([elementName isEqualToString:IMAGE])
{
    NSURL *imageUrl = [attributeDict objectForKey:@"url"];
    NSData *imageData = [NSData dataWithContentsOfURL:imageUrl];
    bbc.image = [UIImage imageWithData:imageData];        
}

wherebbc是一个class(NSObject subclass)用于存储解析内容的对象。

4

3 回答 3

31

我认为您正在使用NSStringas NSURL。尝试这个:

    NSURL *imageUrl =[NSURL URLWithString:[attributeDict objectForKey:@"url"]];
于 2012-11-08T10:56:13.847 回答
1

看起来“url”实际上是一个NSString,而不是一个NSURL对象。自己将其转换为NSURL对象:

if ([elementName isEqualToString:IMAGE])
{
    NSString *urlStr = [attributeDict objectForKey:@"url"];
    NSURL *imageUrl = [NSURL URLWithString:urlStr];
    NSData *imageData = [NSData dataWithContentsOfURL:imageUrl];
    bbc.image = [UIImage imageWithData:imageData];        
}
于 2012-11-08T10:55:49.790 回答
1

imageURL 不是一个 NSURL,而是一个字符串。

于 2012-11-08T10:55:59.240 回答