我正在尝试使用以下代码删除行
[myTable beginUpdates];
[myTable deleteRowsAtIndexPaths:[NSArray arrayWithObjects:indexPath, nil] withRowAnimation:UITableViewRowAnimationBottom];
[myTable endUpdates];
动画适用于除第一行以外的所有行
如果有的话,请告诉我原因/解决方案
由于
答案 0 :(得分:2)
[CATransaction begin];
[CATransaction setCompletionBlock:^{
// animation has finished
NSLog(@"My Animation Ended "); //Check if this is printed when zero index is deleted.
}];
[myTable beginUpdates];
[myTable deleteRowsAtIndexPaths:[NSArray arrayWithObjects:indexPath, nil] withRowAnimation:UITableViewRowAnimationBottom];
[myTable endUpdates];
[CATransaction commit];
如果它被打印,意味着有动画,所以我们可以断定它没有显示的原因。
答案 1 :(得分:0)
如果该部分中只有一行,那么您不应该删除该行,您应该删除该部分。
请注意,在所有情况下,您还需要更新数据存储,以便在使用更改更新表视图的同时删除行/部分。
答案 2 :(得分:0)
问题已解决,
问题是我在调用删除动画后立即将表的alpha设置为零,如下所示,无论如何,谢谢你的回复。
[myTable beginUpdates];
[myTable deleteRowsAtIndexPaths:[NSArray arrayWithObjects:indexPath, nil] withRowAnimation:UITableViewRowAnimationBottom];
[myTable endUpdates];
myTable.alpha = 0;