【问题标题】:How to tell when a UICollectionViewCell disappears如何判断 UICollectionViewCell 何时消失
【发布时间】:2013-11-07 18:32:45
【问题描述】:

我有一个集合视图,其中单元格包含UIImageViews,我正在尝试将标签作为子视图添加到这些视图。问题在于,由于单元格是可重复使用的,因此标签会不断添加。当然,我可以检查我的标签是否已经存在并重新使用它,但我真的很想自己清理一下。有没有办法判断单元格何时消失并移除标签?我查看了各种文档,但没有找到任何看起来很有希望的方法。也许我只是想念它。

【问题讨论】:

  • 您对使用已重用单元格中已存在的标签有何反对?您正在重用单元对象本身;为什么不是它的子视图?或者,如果您已经有一个自定义单元类,请 在控制器尝试访问它时检查标签是否存在。

标签: ios cocoa-touch uicollectionview uicollectionviewcell


【解决方案1】:

委托方法:collectionView:didEndDisplayingCell:forItemAtIndexPath:

但您可能应该只创建一个自定义单元并重用,而不是创建和销毁...

【讨论】:

  • 好的。我已经有一个正在使用的 UICollectionViewCell 的子类。不过,目前它并没有真正做任何事情。问题是集合视图控制器知道标签上的内容。细胞没有。我会查找那个和相关的委托方法。我怀疑这就是我需要的。
  • 单元格不应该知道,它只是托管视图并提供访问它们的属性——因此它们可以很容易地重复使用。
  • 好的。所以就像我有一个 UIImageView 的属性一样,我应该为 UILabel 添加另一个属性。然后我只需通过控制器中的 cell.whatever 访问它。正确的?我想我也需要将它连接到情节提要中。
  • 是的,就是这样。
  • 知道了。我已经知道了。我想我只是需要休息一下。感谢您帮助我重新启动大脑。 :)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-05-19
  • 2011-02-03
  • 2010-09-14
  • 1970-01-01
  • 2021-12-09
  • 2021-12-04
相关资源
最近更新 更多