UICollectionView仅阻止单元重用于第一个单元

时间:2014-12-11 23:37:30

标签: ios uitableview xamarin uicollectionview

将UICollectionView与自定义UICollectionViewCell一起使用,我试图仅向第一个单元格添加一些额外信息。为此,我重写了GetCell方法

public override UICollectionViewCell GetCell(UICollectionView collectionView, NSIndexPath indexPath)

此工作正常,第一个单元格显示额外信息。问题是在CollectionView中再次重复使用单元格,并在那里再次显示额外信息。

如何防止在集合视图中重复使用第一个单元格?

谢谢!

1 个答案:

答案 0 :(得分:2)

几个选项:

  • 覆盖UICollectionViewCell的prepareToReuse方法,并重置 你想要的那种方法
  • 首先使用不同的reuseIdentifiers 和其他细胞
  • 首先使用不同的原型/类 细胞

使用不同的重用标识符: 如果你通过protorypes在故事板中完成它,为第一个单元格创建另一个原型并在你的UITableViewDatasource中做这样的事情

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    UITableViewCell *cell;
    if (indexPath.row == 0) {
        cell = [tableView dequeueReusableCellWithIdentifier:@"FirstTableCell" forIndexPath:indexPath];
    } else {
        cell = [tableView dequeueReusableCellWithIdentifier:@"UsualTableCell" forIndexPath:indexPath];
    }
    return cell;
}