UITableView reloadData 在编辑和保留动画时

Posted

技术标签:

【中文标题】UITableView reloadData 在编辑和保留动画时【英文标题】:UITableView reloadData when editing and keep animations 【发布时间】:2015-01-07 08:03:47 【问题描述】:

当用户将表格视图置于编辑模式时,我正在通过覆盖我的 UITableViewController 子类中的 -setEditing:animated 来重新加载这样的 UITableView。

- (void)setEditing:(BOOL)editing animated:(BOOL)animated

    [super setEditing:editing animated:animated];
    [self.tableView reloadData];

这可行,但有没有办法保留动画?通常,红色的删除按钮和移动按钮指示器会滑入视图。

我正在隐藏空白部分的部分标题,但我想在编辑时显示它们,以便用户可以将表格视图单元格移动到空白部分,这就是我在编辑时重新加载表格的原因。

【问题讨论】:

【参考方案1】:

改用-reloadSections:withRowAnimation:

- (void)setEditing:(BOOL)editing animated:(BOOL)animated

    [super setEditing:editing animated:animated];
    // specify appropriate sections you have.
    [self.tableView reloadSections:[NSIndexSet indexSetWithIndexesInRange:NSMakeRange(0, 1)] withRowAnimation:UITableViewRowAnimationAutomatic];

【讨论】:

以上是关于UITableView reloadData 在编辑和保留动画时的主要内容,如果未能解决你的问题,请参考以下文章

UITableView.reloadData() 没有刷新 tableView。没有错误信息

UITableView 的 reloadData() 的替代方案?

UIView 与 UITableview 和 UIImageview,使用 reloadData 访问 UITableview

UITableView 强制 sectionIndex 更新而不调用 reloadData

iOS UITableView reloadData 刷新结束后执行后续操作

调用 reloadData 时 UITableView 有不需要的动画