我想从Url加载图片数组并添加到UICollectionView
Tony.pageImages =imagearray;
[Tony reloadData];
NSLog(@"imagearray%@",imagearray);
Tony是Collection view.h / m文件。 pageImages
文件NSMutableArray
为Tony.h
。 Image数组显示控制台日志意味着我正确地获得了图像数组
那些是网址。
但是当我在UICollectionView
方法上添加代码时,它无法正常工作
-(UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath
{
UICollectionViewCell *cell =
[collectionView dequeueReusableCellWithReuseIdentifier:reuseIdentifier forIndexPath:indexPath];
UIImageView *CollectionViewImage = (UIImageView *)[cell viewWithTag:120];
CollectionViewImage.image= [UIImage imageNamed:self.pageImages[indexPath.row]];
return cell;
}
我想念一下吗?
这是我的imagearray
imagearray = [[NSMutableArray alloc] init];
for (int i = 0;i < comment.count; i++)
{
[imagearray addObject:comment [i] [@&#34; pic_url&#34;]];
}
答案 0 :(得分:0)
您必须在viewcontroller中实现并设置以下dataSource委托UICollectionViewDataSource
:
- (NSInteger)numberOfSectionsInCollectionView:(UICollectionView *)collectionView {
return 1;
}
- (NSInteger)collectionView:(UICollectionView *)collectionView
numberOfItemsInSection:(NSInteger)section {
return imagearray.count;
}
答案 1 :(得分:0)
如果我做对了,你需要从URL加载图片。 为此,只需添加以下代码:
[CollectionViewImage.image setImageWithURL:[NSURL URLWithString:self.pageImages[indexPath.row]] placeholderImage:nil];
或者,如果您想添加占位符图片,只需设置placeholderImage:[UIImage imageNamed:@"someImageInYourAssets"];
答案 2 :(得分:-2)
NSData * imageData = [[NSData alloc] initWithContentsOfURL: [NSURL URLWithString:self.pageImages[indexPath.row]]];
UIImage *image = [UIImage imageWithData: imageData];
CollectionViewImage.image = image;
这是如何解决从url加载图像的问题,没有添加框架如“Heneke”,“AFNetworking”等等。在Objective C中,Image View无法直接与URL通信,但可以使用NSData作为Helper对象(包装)。