2

我必须是一个完整的菜鸟,但我无法弄清楚这一点,需要一些帮助。

我有UIView一个UICollectionView在里面。UICollectionViewCell当我添加集合视图时,由于某种原因,我的笔尖中没有 a ,我只有在将集合视图添加到UIViewController. 我的部分问题是 - 是否可以UICollectionViewCell在我的 nib 文件中有一个?

我认为答案是否定的,所以我尝试了以下方法:

我为我的自定义创建了一个单独的 nib 文件和类,UICollectionViewCell并将自定义单元格注册到我的集合视图,如下所示:

[self.itemsCollection registerClass:[CustomCollectionViewCell class] forCellWithReuseIdentifier:@"ItemCell"];

然后在我的cellForItemAtIndexPath方法中,我这样做:

CustomCollectionViewCell *cell = [collectionView dequeueReusableCellWithReuseIdentifier:@"ItemCell" forIndexPath:indexPath];
cell.itemImage.image = [UIImage imageNamed:@"Some Image.png"];
cell.itemLabel.text = @"Some Title";

但是,当我的单元格被创建时,itemImage两者itemLabel都是nil.

任何想法,将不胜感激!

谢谢。

4

1 回答 1

1

如果您IBOutlet在 NIB 中定义了引用,那么您必须注册 NIB,而不是类。所以,替换:

[self.itemsCollection registerClass:[CustomCollectionViewCell class] forCellWithReuseIdentifier:@"ItemCell"];

[self.itemsCollection registerNib:[UINib nibWithNibName:@"YourNibName" bundle:nil] forCellWithReuseIdentifier:@"ItemCell"];

您的 NIB 可以指定CustomCollectionViewCell.

于 2013-10-20T06:29:10.860 回答