Ios 从UITableView中清除缓存的单元格

Ios 从UITableView中清除缓存的单元格,ios,objective-c,uitableview,Ios,Objective C,Uitableview,要建立某种背景: 我有一个包含n个单元格的UITableView。 当用户选择一个单元时,该单元将展开,用户体验将在该单元内继续。 单元中会出现一些动画 - (void) tableView: (UITableView *) tableView didSelectRowAtIndexPath: (NSIndexPath *) indexPath { //expand cell/increase cell height animated //add a button to bo

要建立某种背景: 我有一个包含n个单元格的UITableView。

当用户选择一个单元时,该单元将展开,用户体验将在该单元内继续。 单元中会出现一些动画

- (void) tableView: (UITableView *) tableView didSelectRowAtIndexPath: (NSIndexPath *) indexPath
{
     //expand cell/increase cell height animated
     //add a button to bottom of cell with target(didpressbutton:)
}

- (void)didpressbutton:(id)sender
{
     //perform complex animating rearranging UI elements
}
在流程结束时,用户需要返回到原始的tableview

但UI元素未对齐的单元格仍在显示,因为它正在将旧单元格移出队列。
我有没有办法清除缓存的单元格或重新初始化它们

但是,UI元素未对齐的单元格仍在显示,因为它正在对旧单元格进行排队。 我有没有办法清除缓存的单元格或重新初始化它们


您显然误用了
-prepareforeuse:
。实现此方法可重置单元格的任何状态。

“然后用户体验在该单元格内继续”这是如何工作的?您可以发布一些代码吗?不在CellForRowatineIndexPath中使用dequeueReusableCellWithReuseIdentifier方法如何?但是它有内存问题,meybe。我试过了,但没有成功,可能是我做错了什么。这对你有用吗?我不知道你的手机是干什么的。但它一直对我有效。您能否提供
-prepareforeuse:
的实现?等等,我必须实现它吗?我想我必须调用它基于我必须重置所有视图manually@AatishMolasi它由
UITableView
自动调用。您必须在cell子类中实现它,并重置它的状态。苹果不知道他们需要在你的自定义类中重置什么,因此你需要告诉他们。