0

リモート Web サーバーから XML ファイルを解析しようとすると、XML ファイルからのデータを正常に解析できます。UIImageViewXML ファイルから、画像の URL を取得して、View Controller に割り当てようとしました。ここで次のエラーが発生します。

  • 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");
}

これを解決するためのアイデアを教えてください。

4

4 に答える 4

1

この行を変更します:

 self.firstImage.image = [UIImage imageWithContentsOfUrl:[NSURL URLWithString:url]]; 

 self.firstImage.image = [UIImage imageWithContentsOfFile:[NSString stringWithFormat:@"%@",url]]; 
于 2013-02-05T12:02:15.873 に答える
1

タイプミスがあります。それはimageWithContentsOfURL:(大文字の URL) であり、 ではありませんimageWithContentsOfUrl:。そのため、クラス メソッドが認識されません。

編集:また、それはCIImageand notの方法ですUIImage

于 2013-02-05T12:20:23.007 に答える
1

これを試して :-

交換

self.firstImage.image = [UIImage imageWithContentsOfUrl:[NSURL URLWithString:url]];

NSData *mydata = [[NSData alloc] initWithContentsOfURL:url];
self.firstImage.image = [UIImage imageWithData:mydata];

それがあなたを助けることを願っています..

于 2013-02-05T12:09:43.327 に答える
1

動作するはずです。交換するだけです

self.firstImage.image = [UIImage imageWithContentsOfUrl:[NSURL URLWithString:url]] ;

self.firstImage.image = [UIImage imageWithData:[NSData dataWithContentsOfURL:url]];

注意: NSUrl の URL は画像の URL である必要があります

于 2013-02-05T12:14:16.903 に答える