Iphone 再订购控制是';t显示在表格视图上

Iphone 再订购控制是';t显示在表格视图上,iphone,cocoa-touch,ios,uitableview,core-data,Iphone,Cocoa Touch,Ios,Uitableview,Core Data,我根据基于导航的应用程序模板创建了一个iOS应用程序,该应用程序由核心数据框架支持 当点击编辑按钮时,我希望这些行可以重新排序和删除 在构建单元时,我添加了以下行: cell.showsReorderControl = YES; 而tableView:canmoverowatinexpath:方法返回YES 但行中未显示“重新排序”控件,我是否遗漏了什么?UITableView也必须处于编辑模式,默认情况下不处于编辑模式。通常使用按钮或其他控件在编辑模式之间切换。要将表视图置于编辑模式(我们假

我根据基于导航的应用程序模板创建了一个iOS应用程序,该应用程序由核心数据框架支持

当点击编辑按钮时,我希望这些行可以重新排序和删除

在构建单元时,我添加了以下行:

cell.showsReorderControl = YES;
tableView:canmoverowatinexpath:
方法返回YES


但行中未显示“重新排序”控件,我是否遗漏了什么?

UITableView也必须处于编辑模式,默认情况下不处于编辑模式。通常使用按钮或其他控件在编辑模式之间切换。要将表视图置于编辑模式(我们假设您有一个UITableViewController,并且您的tableView属性设置正确,如果没有设置,请根据您的环境进行调整):

从:

要显示“重新排序”控件,您必须不仅设置 属性,但实现UITableViewDataSource方法 tableView:MoveRowatineXpath:toIndexPath:。此外,如果数据 source实现tableView:CanMoveRowatineXpath:若要返回否,则 重新排序控件未出现在该指定行中


试试这个。您必须实现这两种方法才能在编辑模式下获得重新排序控件

- (BOOL)tableView:(UITableView *)tableView canMoveRowAtIndexPath:(NSIndexPath *)indexPath
{
  return YES;
}

- (void)tableView:(UITableView *)tableView moveRowAtIndexPath:(NSIndexPath *)sourceIndexPath toIndexPath:(NSIndexPath *)destinationIndexPath
{

}

下面是一个想象的屏幕截图,显示当按下编辑按钮(位于导航栏左侧)时会发生什么?单击“编辑”时是否可以合并删除和排序操作?我不知道必须实现tableView:MoveRowatineXpath:toIndexPath:才能显示移动附件。这解决了我的问题!谢谢
- (BOOL)tableView:(UITableView *)tableView canMoveRowAtIndexPath:(NSIndexPath *)indexPath
{
  return YES;
}

- (void)tableView:(UITableView *)tableView moveRowAtIndexPath:(NSIndexPath *)sourceIndexPath toIndexPath:(NSIndexPath *)destinationIndexPath
{

}