【发布时间】:2015-02-15 15:23:17
【问题描述】:
我编写了一个应用程序,它从 RSS 提要中获取图像的 url 并将其显示在 UIImageView 中,我知道我正在拉取的图像是有效的,因为图像的 url 直接进入我的标签,显示url,我输入了它,它转到了一个图像。这是一个jpg图像。烦人的是,即使我手动输入图片的网址,任何图片都不起作用。
这是我的代码,图像视图代码在底部。
- (void)viewDidLoad {
[super viewDidLoad];
NSURL *URL = [NSURL URLWithString:@"http://rss.cnn.com/rss/edition_world.rss"];
NSData *data = [NSData dataWithContentsOfURL:URL];
// Assuming data is in UTF8.
NSString *string = [NSString stringWithUTF8String:[data bytes]];
titleLabelLatestNews.text = string;
NSString *webString = titleLabelLatestNews.text;
NSScanner *stringScanner = [NSScanner scannerWithString:webString];
NSString *content = [[NSString alloc] init];
while ([stringScanner isAtEnd] == NO) {
[stringScanner scanUpToString:@"url=\"" intoString:Nil];
[stringScanner scanUpToString:@"/>" intoString:&content];
NSString *filteredImage = [content stringByReplacingOccurrencesOfString:@"url=\"" withString:@""];
NSString *filteredImage2 = [filteredImage stringByReplacingOccurrencesOfString:@"\"" withString:@""];
titleLabelLatestNews.text = filteredImage2;
NSURL * imageURL = [NSURL URLWithString:filteredImage2];
NSData * imageData = [NSData dataWithContentsOfURL:imageURL];
UIImage * image = [UIImage imageWithData:imageData];
[imageView setImage:image];
}
我用于 imageView 的代码 -
NSURL * imageURL = [NSURL URLWithString:filteredImage2];
NSData * imageData = [NSData dataWithContentsOfURL:imageURL];
UIImage * image = [UIImage imageWithData:imageData];
[imageView setImage:image];
是因为JPG吗? 是因为我的 ImageView 吗? 一切都已链接,一切正常,除了这个我已经看到所有关于如何从 url 获取图像的帖子,我尝试了所有方法,但似乎没有任何效果,图像视图保持空白和白色。
总结: 我正在从网站上提取图像链接,并且该链接有效,因为我对其进行了测试,并且我尝试下载并放入图像视图的任何其他图像也不起作用,图像视图是空白的,并且什么也没有显示。
感谢您的帮助!
【问题讨论】:
-
imageData 包含什么?你检查它是否不是零? (只是问你知道)
-
等一下我会检查
-
天哪,它返回 nil 好的,我该如何解决这个问题? @Avi Tsadok
-
首先,检查图片的url是否有返回内容。把它放在浏览器里就行了。
-
哦,刚刚看到你检查了。等等
标签: ios objective-c image url uiimageview