【问题标题】:Cell hidden bug单元格隐藏错误
【发布时间】:2016-03-23 08:04:32
【问题描述】:

我尝试在匹配@“56eae83ae3c9a04d398b4582”中隐藏我的单元格 ID,它工作正常,除了当我滚动时我的 UICollectionView 隐藏了其他单元格,一个想法?谢谢

cell.statusContest.text = [searchResult objectForKey:@"id"];

                if ([cell.statusContest.text isEqualToString:@"56eae83ae3c9a04d398b4582"]) {
                    cell.hidden = YES;
                }

【问题讨论】:

  • 尝试将 else 与 hidden= NO; 一起使用,这要归功于可重用性

标签: ios objective-c cell hidden collectionview


【解决方案1】:

你可以尝试在cell类方法prepareForReuse中写cell.hidden = NO;

如果您使用自定义单元格,则需要转到您的单元格类(CellClass.mCellClass.swift),或者只需创建自己的 CellClass 并在下面添加代码。还要检查情节提要中的单元格,它必须使用此类。

Objective-C

- (void)prepareForReuse {
    // Reset your data
    self.hidden = NO;
}

斯威夫特

override func prepareForReuse() {
    // Reset your data
    self.hidden = false
}

【讨论】:

  • 我不使用 prepareForSegue
  • @victorbill 你使用自定义单元格吗?
  • prepareForReuse 与 segue 无关。细胞被重复使用,您需要在系统回收它们之前将它们清理干净。
  • @victorbill 这是单元类的方法,所以你需要去你的单元类并添加 prepareForReuse 方法。我现在编辑了我的答案
  • @victorbill Overwrite prepareForReuse: 在您的自定义单元格中并重置所有内容(包括隐藏标志)。
猜你喜欢
  • 1970-01-01
  • 2017-12-11
  • 1970-01-01
  • 1970-01-01
  • 2019-06-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-07-11
相关资源
最近更新 更多