这里是 iPhone 新手。 我要显示从 rss 提要中获取的图像。我目前正在使用下面的代码,但会减慢 View 中元素的加载速度:
for(int i=0; i<[bannerArray count]; i++){
NSString *bannerImagestr = [[bannerArray objectAtIndex:i] BannerImage];
bannerImagestr = [ bannerImagestr stringByTrimmingCharactersInSet: [NSCharacterSet whitespaceAndNewlineCharacterSet]];
NSURL *banURL= [NSURL URLWithString:bannerImagestr];
NSData *data = [NSData dataWithContentsOfURL:banURL];
imgEventDetail = [[[UIImage alloc] initWithData:data] autorelease];
[banEventDetailArray addObject:imgEventDetail];
}NSLog(@"the banEventDetailArray is %@",banEventDetailArray);
我尝试了 SDWebImage api 以使其加载速度更快,但我无法获取图像。我一直在使用的代码如下:
for(int i=0; i<[bannerArray count]; i++){
NSString *bannerImagestr = [[bannerArray objectAtIndex:i] BannerImage];
bannerImagestr = [ bannerImagestr stringByTrimmingCharactersInSet: [NSCharacterSet whitespaceAndNewlineCharacterSet]];
NSURL *banURL= [NSURL URLWithString:bannerImagestr];
[banIconImage setImageWithURL:banURL placeholderImage:[UIImage imageNamed:@"placeholder.png"]];
banImg=banIconImage.image;//<<<-------- updated here banImg is an instance of UIImage
[banEventDetailArray addObject:banImg];
}NSLog(@"the banEventDetailArray is %@",banEventDetailArray);
我需要 UIImage
形式的 banEventDetailArray
,因为我在下面的代码中设置了这个数组,它采用 (UIImage *)
作为它的参数
[eventsdetailroundedButtonType setBackgroundImage:[banEventDetailArray objectAtIndex:numTimerTicks] forState:UIControlStateNormal];
请帮助我找出我遗漏了什么以及我可能哪里出错了。
提前致谢。
更新:我已经替换了第二个代码块中的一行。即 banImg=banIconImage.image;在第 11 行。
最佳答案
您可以使用您的图像 URL 作为查找缓存图像的键:
UIImage *myCachedImage = [[SDImageCache sharedImageCache] imageFromKey:[NSString \
stringWithFormat:@"%@",banURL]];
关于iphone - 无法使用 SDWebImage 显示图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10860638/