iCarousel 显示来自图像 URL 数组的图像
Posted
技术标签:
【中文标题】iCarousel 显示来自图像 URL 数组的图像【英文标题】:iCarousel display images from array of images' URLs 【发布时间】:2017-01-05 07:52:38 【问题描述】:我已经使用以下相关代码为 iPad 上的横幅视图实现了 iCarousel:
- (NSInteger)numberOfItemsInCarousel:(__unused iCarousel *)carousel
return (NSInteger)[self.bannerDatas count];
- (UIView *)carousel:(__unused iCarousel *)carousel viewForItemAtIndex:(NSInteger)index reusingView:(UIView *)view
if (view == nil)
view = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 215.0f, 155.0f)];
((UIImageView *)view).image = [UIImage imageNamed:[self.netImages objectAtIndex:index]];
view.contentMode = UIViewContentModeCenter;
return view;
但问题出在这一行:
((UIImageView *)view).image = [UIImage imageNamed:[self.netImages objectAtIndex:index]];
netImages 需要是图像的名称才能获得此作品,但我的 netImages 包含图像的 URL 数组。所以我的问题是如何使用图片 URL 而不是 Carousel 的名称?
下面是netImages如何获取数据:
- (NSArray *)setUpNetImages
self.netImages = [NSMutableArray new];
for (BannerData *data in self.bannerDatas)
if (data.imageUrl != nil)
[self.netImages addObject:data.imageUrl]; //original
return self.netImages;
【问题讨论】:
【参考方案1】:请使用SDwebImage,它为您提供了从 url 在异步排序器中下载图像的功能,并在下载完成后更新您的图像。您的 UI 永远不会停止。
((UIImageView *)view)sd_setImageWithURL:[NSURL URLWithString:[self.netImages objectAtIndex:index]]
placeholderImage:[UIImage imageNamed:@"placeholder.png"]]
你只需要添加它并导入
#import <SDWebImage/UIImageView+WebCache.h>
【讨论】:
以上是关于iCarousel 显示来自图像 URL 数组的图像的主要内容,如果未能解决你的问题,请参考以下文章