UICollectionViewCell的子类未显示

时间:2013-04-02 04:36:28

标签: cocoa-touch uicollectionview uicollectionviewcell

我有一个通过单击导航控制器中的表格单元格显示的UICollectionView。所以UICollectionView是导航控制器堆栈中的第二个屏幕。

当我注册一个笔尖并通过UICollectionViewCell类创建单元格时,单元格在集合视图中显示正常。但是一旦我尝试为单元格创建子类,集合视图就会显示为黑屏。我的项目可以在这里找到。 Link to Project in Dropbox

要为UICollectionViewCell创建子类,我执行了以下操作:

  • 为UICollectionViewCell的子类创建了.h和.m文件。在nib的属性检查器上引用了这个自定义类。

enter image description here

  • 在显示集合视图的视图控制器的viewDidLoad中注册带有单元格重用标识符的自定义类。

    [self.collectionView registerClass:[CustomCollectionViewCell class] forCellWithReuseIdentifier:@"cvCell"];
    
  • 在“collectionView:cellForItemAtIndexPath:”

    中创建自定义单元格的实例
    CustomCollectionViewCell *cell = [collectionView dequeueReusableCellWithReuseIdentifier:@"cvCell" forIndexPath:indexPath];
    

从我读过的内容来看,应该这样做!但是集合视图显示为空白,任何人都可以帮忙吗?

1 个答案:

答案 0 :(得分:6)

我检查了你的代码。你做得很完美。带有单元格的集合视图显示正确,但您无法看到,因为您没有设置单元格的任何属性。只需在cellForItem

中设置单元格的背景颜色即可
  cell.backgroundColor = [UIColor redColor];

如果你在nib中完成了所有工作,那么你需要注册nib而不是class。使用registerNib代替registerClass。如果您正在注册课程,则必须以编程方式完成所有操作。