尝试从远程Web服务器解析XML文件时,我可以成功解析XML文件中的数据。从XML文件中,我尝试检索图像URL并将其分配给视图控制器的UIImageView
。这里得到以下错误,
ARC Semantic Issue: No known class method for selector 'imageWithContentsOfUrl:'
Sematic Issue: Incompatible pointer types sending 'NSURL *__strong' to parameter of type 'NSString *'
以下是我的代码,
//My View Controller
[super viewDidLoad];
NSURL *url = [NSURL URLWithString:@"http://sample.com/Products.xml"];
EGSParser *parser = [[EGSParser alloc] init];
// Error in below line( here firstImage is a UIImageView property)
self.firstImage.image = [UIImage imageWithContentsOfUrl:[NSURL URLWithString:url]];
if ([parser loadXMLByURL:url]) {
NSLog(@"success; products=%@",parser.products);
self.xmlProductsResults = parser.products;
}
else
{
NSLog(@"Log Fail");
}
请建议我解决这个问题。
答案 0 :(得分:1)
更改此行:
self.firstImage.image = [UIImage imageWithContentsOfUrl:[NSURL URLWithString:url]];
到
self.firstImage.image = [UIImage imageWithContentsOfFile:[NSString stringWithFormat:@"%@",url]];
答案 1 :(得分:1)
试试这个: -
替换
self.firstImage.image = [UIImage imageWithContentsOfUrl:[NSURL URLWithString:url]];
与
NSData *mydata = [[NSData alloc] initWithContentsOfURL:url];
self.firstImage.image = [UIImage imageWithData:mydata];
希望它可以帮助你..
答案 2 :(得分:1)
应该有效,只需替换
self.firstImage.image = [UIImage imageWithContentsOfUrl:[NSURL URLWithString:url]] ;
与
self.firstImage.image = [UIImage imageWithData:[NSData dataWithContentsOfURL:url]];
注意:NSUrl网址应该是图片网址
答案 3 :(得分:1)
你有一个拼写错误,它是imageWithContentsOfURL:
(大写网址),而不是imageWithContentsOfUrl:
。这就是为什么不能识别类方法的原因。
修改:此外,它是CIImage
而非UIImage
的方法。