我使用两个不同的uicollectionview与不同的两个不同的uicollectionviewcell和单元格的结构也不同如何在一个控制器视图中注册两个单元类。
答案 0 :(得分:1)
[self.collectionView registerClass:[HCTabBarItemCell class]
forCellWithReuseIdentifier:[HCTabBarItemCell reuseIdentifier]];
如果您从.xib文件加载自定义UICollectionViewCell子类,您还应该注册其笔尖:
[self.collectionView registerNib:[HCTabBarItemCell nibName]
forCellWithReuseIdentifier:[HCTabBarItemCell reuseIdentifier]];
其中类方法nibName&在您的(基本)自定义单元类中声明并实现了reuseIdentifier:
+ (NSString *)reuseIdentifier {
return NSStringFromClass([self class]);
}
+ (UINib *)nibName {
return [UINib nibWithNibName:NSStringFromClass([self class]) bundle:nil];
}
然后通过reuseIdentifier:
在cellForRow方法中获取自定义单元格- (UICollectionViewCell *)collectionView:(UICollectionView *)collectionView
cellForItemAtIndexPath:(NSIndexPath *)indexPath {
HCTabBarItemCell *cell = [self.collectionView dequeueReusableCellWithReuseIdentifier:[HCTabBarItemCell reuseIdentifier]
forIndexPath:indexPath];
return cell;
}