我试图将图像作为集合视图单元格,几乎就是这样。没有花哨的东西,只有图像本身,而且,至少调整到细胞大小。
我正在做的事情甚至没有编译,即使我感到非常自信。
背景: 集合视图是一个带有所需图像的运动列表。单元格实际上包含图像和字符串(运动的标题),并且是另一页面的segue。我不需要这个特定的页面是动态的,我实际上会输入所有的运动并自己放置图像,因为我不需要太多而且不会被编辑。 / p>
集合视图称为typeCollection,位于.h中(因此代码中为_) MyEvent.typePictures是'事件'持有图像数组的对象' typePictures'。
这是我在Event类中的图片数组:
_typePictures = [[NSMutableArray alloc]initWithObjects:
[UIImage imageNamed:@"climbing.jpg"],
[UIImage imageNamed:@"skydiving.jpg"],
[UIImage imageNamed:@"running.jpg"],
[UIImage imageNamed:@"swimming.jpg"],
nil];
这是我控制器中的单元格创建方法:
-(UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *cellIdentifier = @"cvCell";
UICollectionViewCell *cell = [_typeCollection dequeueReusableCellWithReuseIdentifier:cellIdentifier forIndexPath:indexPath];
UIImage *image = [[UIImage alloc]initWithContentsOfFile:[_MyEvent.typePictures objectAtIndex:indexPath.row]];
UIImageView *imageView = [[UIImageView alloc]initWithImage:image];
cell.backgroundView = imageView;
return cell;
}
它停止在UIImage *image
行进行编译,并在日志中提供此错误:
- [UIImage pathExtension]:无法识别的选择器发送到实例0xa4b4440 2014-05-30 13:55:55.344 ApiSport [2580:60b] * 终止 应用程序由于未捕获的异常' NSInvalidArgumentException',原因: ' - [UIImage pathExtension]:发送到实例的无法识别的选择器 0xa4b4440'
另外,如果我移除return cell;
上方的3行,一切都编译得很好,但我显然没有显示我的图像(我只是手动设置了基本的粉红色背景)
我希望我给出足够的解释!这就是我正在寻找的东西
非常感谢您的时间:)
答案 0 :(得分:1)
要获得正确的图像,您只需要
UIImage * image = _typePictures [indexPath.row];