【发布时间】:2014-12-17 22:44:16
【问题描述】:
希望简单地将解析图像 url 转换为字符串,以便我可以使用 SDWebImage 进行缓存等。
经过研究,我发现我可以通过在 NSURL 上调用 absoluteString 来将 url 转换为字符串。我也试过这个:
NSURL *theUrl = [[obj objectForKey:@"image"] url];
NSString *finalUrl = [theUrl absoluteString];
[cell.carPhoto setImageWithURL:[NSURL URLWithString:finalUrl]
placeholderImage:[UIImage imageNamed:@"placeholder.png"]];
但我也因同样的错误而在这条线上崩溃
NSString *finalUrl = [theUrl absoluteString];
有什么想法吗?顺便说一句,obj 是一个 PFObject
【问题讨论】:
-
显然这意味着
[obj[@"image"] url]正在返回NSString,而不是NSURL。查看您为“图像”键添加值的位置。您添加的是NSString,而不是NSURL。 -
看起来 [[obj objectForKey:@"image"] url] 是 NSString 而不是 NSURL。你可以试试 [cell.carPhoto setImageWithURL:[NSURL URLWithString:theUrl] placeholderImage:[UIImage imageNamed:@"placeholder.png"]];
-
为什么你认为你需要从 URL 转换为字符串,然后立即返回 URL?
-
obj会不会是一个 PFFile 实例?如果是,url返回一个字符串,你不需要调用absoluteString,它已经是一个了。 -
您的编辑不会改变任何东西。
[[obj objectForKey:@"image"] url]仍然返回NSString,而不是NSURL。您的theUrl变量被声明为NSURL的事实无关紧要。分配给theUrl的值实际上仍然是NSString。
标签: ios objective-c sdwebimage