Ios UITableViewCell子视图动画影响多个单元格

Ios UITableViewCell子视图动画影响多个单元格,ios,uitableview,uiview,ios8,core-animation,Ios,Uitableview,Uiview,Ios8,Core Animation,我有一个自定义UITableViewCells的UITableView。我在didSelectRow中放置了一个动画,用于单元格中的一个视图隐藏,另一个视图显示。但当我这样做时,它会影响其他细胞,就像动画中的其他细胞一样 例如,如果我有20个单元格,并且我在indexPath 1中选择了单元格,则动画在indexPath 1、4、7、10、13、16和19中发生 CustomCell *cell = (CustomCell *)[tableView cellForRowAtIndexPath:i

我有一个自定义UITableViewCells的UITableView。我在didSelectRow中放置了一个动画,用于单元格中的一个视图隐藏,另一个视图显示。但当我这样做时,它会影响其他细胞,就像动画中的其他细胞一样

例如,如果我有20个单元格,并且我在indexPath 1中选择了单元格,则动画在indexPath 1、4、7、10、13、16和19中发生

CustomCell *cell = (CustomCell *)[tableView cellForRowAtIndexPath:indexPath];

[UIView beginAnimations:@"moveCell" context:nil];
[UIView setAnimationDuration:animationFlipTime];
[UIView setAnimationTransition:UIViewAnimationTransitionFlipFromRight forView:cell cache:NO];
[cell.view1 setHidden:NO];
[cell.view2 setHidden:YES];
[UIView commitAnimations];
我还尝试了其他动画方法,如
[UIView animateWithDuration…]
,它们都呈现相同的结果


帮助?

只有在滚动时才会出现问题,对吗?换句话说,如果你没有,只有一个细胞动画?你看到所有这些细胞的动画发生了吗,或者当你向下滚动时,你是否发现它们发生了变化?不确定,其他细胞在tableView框架之外,所以我必须滚动查看它们,但不确定这是否触发了它。是的,我怀疑是滚动导致了它。单元格在屏幕外滚动时会被重复使用,因此您需要修改cellForRowAtIndexPath以重置它们。或者您可以在UITableViewCell的自定义子类中实现
prepareForReuse
,并重置其中的子视图。