所以我有一个UITableView
有很多部分,每个部分都包含带有特定字母字母的项目(按字母顺序排序)。用户可以向此表添加更多数据,因此当他们添加一个不在其中的部分中的新项时,必须创建一个新部分。删除时同样的问题,如果删除部分中的最后一项,则将删除整个部分。我该如何设置动画?
我发现了类似的内容:UITableview reloaddata with animation
但这对我没有帮助。它建议使用这种方法(在swift中):
[_tableView reloadSections:[NSIndexSet indexSetWithIndex:0] withRowAnimation:UITableViewRowAnimationFade];
如果你在重新加载之前和之后有相同数量的部分,这很有用,但是我没有。部分的数量可能会改变,导致崩溃。
答案 0 :(得分:1)
出于上述目的,您不应重新加载数据。要添加新部分,您应该使用
- (void)insertSections:(NSIndexSet *)sections
withRowAnimation:(UITableViewRowAnimation)animation
删除你应该使用的部分,
- (void)deleteSections:(NSIndexSet *)sections
withRowAnimation:(UITableViewRowAnimation)animation