iOS:将表格单元格移动到另一个部分

时间:2011-12-30 11:27:26

标签: ios tableview

我有UITableView一些部分和行。

当我调用一个函数时,我想将一行从一个部分移动到另一个部分(所以不是我的手指,我不想使用UITableView的编辑模式。)

我该怎么做?

如果我重新创建一个数据源并重新加载表,它没问题,但它不使用动画。

1 个答案:

答案 0 :(得分:2)

UITableView为您提供了相应的方法:

致电beginUpdates,更新您的数据源,致电moveRowAtIndexPath,最后致电endUpdates上的UITableView

[tableView beginUpdates];

// update your datasource
// ... 

// fill in your indexpath of old and new position
[tableView moveRowAtIndexPath: ... toIndexPath: ...];
[tableView endUpdates];

编辑:moveRowAtIndexPath仅适用于iOS 5+ 所以你宁愿使用它:

[tableView insertRowsAtIndexPaths: ... withRowAnimation:...];
[tableView deleteRowsAtIndexPaths: ... withRowAnimation:...];