通过拖动重新排序iPhone上的UITableView部分(如重新排序行)

时间:2009-05-18 15:10:05

标签: iphone objective-c cocoa-touch

SDK中是否有任何允许重新排序tableView部分的内容?如同,将整个部分移动到相邻部分的下方或上方?这对于单独的UITableViewCells来说是合理的。虽然没有看到它为部分做过。

4 个答案:

答案 0 :(得分:4)

可能不理想,但相当简单,值得考虑: 将向上/向下按钮添加到节标题中。在第一个上,在最后一个上下,在所有其他上下。然后通过以编程方式重新排序表来响应按钮按下。向上移动一个部分向下移动部分向下移动一个部分。 马丁

答案 1 :(得分:3)

没有用于移动表格视图部分的内置触摸响应式API - 您必须以编程方式执行此操作,然后发送[tableView reloadData]消息或类似信息。

但是,您可以创建一个表视图,其中每个UITableViewCell的视图本身都是包含数据部分的UITableView,因此“master”表中的单元格可以作为UITableViewCells拖放。这可以让你重新排序表中的“部分”,但它们不再是部分 - 它们是单独的表,每个表都有一个部分。

答案 2 :(得分:2)

也许作为一个替代的想法,reloadData在表上只显示你的表上的一个“折叠全部”视图(也许甚至可以动画这个?)然后有一个部分,包含所有部分作为行元素。唯一需要的是一个按钮,将您的表设置为此状态。

答案 3 :(得分:0)

我尝试将行从一个部分移动到另一个部分,同时更新数据源。但这似乎是不可能的任务。中间空单元格,部分内容错误,部分排序错误是我得到的唯一结果。