Ios5 iTableViewCell willMoveToSuperview中的差异:iOS 5和iOS 6之间的行为

Ios5 iTableViewCell willMoveToSuperview中的差异:iOS 5和iOS 6之间的行为,ios5,uitableview,ios6,Ios5,Uitableview,Ios6,在iOS 5下,似乎每次使用或重用单元格时都会调用UITableViewCell子类的willMoveToSuperview:方法,但在iOS 6下,似乎只有在最初创建和使用单元格时才会调用,而不是在重用单元格时才会调用。有人能证实这一差异吗?这是虫子吗 在iOS 5和iOS 6中重复使用单元时,将调用UITableViewCell子类中的单元设置,我应该使用什么方法?我在UICollectionView中遇到了相同的问题。似乎您必须在用于显示的视图中实现方法prepareforeuse(例如U

在iOS 5下,似乎每次使用或重用单元格时都会调用
UITableViewCell
子类的
willMoveToSuperview:
方法,但在iOS 6下,似乎只有在最初创建和使用单元格时才会调用,而不是在重用单元格时才会调用。有人能证实这一差异吗?这是虫子吗


在iOS 5和iOS 6中重复使用单元时,将调用
UITableViewCell
子类中的单元设置,我应该使用什么方法?我在UICollectionView中遇到了相同的问题。似乎您必须在用于显示的视图中实现方法
prepareforeuse
(例如UITableViewCell或UICollectionViewCell类型)。但是,如果您在iOS6中使用新的
dequeueReusableCellWithReuseIdentifier:forIndexPath:
和注册类
registerClass:forCellWithReuseIdentifier:
,则即使这是第一次创建单元(而不仅仅是在重复使用时),也会调用此函数

参考资料:

1。如何知道单元格是否已从tableview中删除? 使用此方法执行某些操作,例如清理、停止计时器或其他操作

- (void)tableView:(UITableView *)tableView didEndDisplayingCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath
2.如何知道是否要显示单元格
  • (void)tableView:(UITableView*)tableView将显示单元格:(UITableViewCell*)用于rowatindexpath:(nsindepath*)indepath的单元格
3.如何知道单元是否要重用 重写此方法

UITableViewCell:
 - (void)prepareForReuse();

已证实的didMoveToSuperview也是如此。搞乱了我的一些动画代码。是否有人知道这是一个bug,或者它是故意的?将willMoveToWindow添加到该bug中。这同样适用于UICollectionViewCell。