//设置移动效果 -(void)setEditing:(BOOL)editing animated:(BOOL)animated { [super setEditing:editing animated:animated]; [self.tableView setEditing:editing animated:animated]; } -(BOOL)tableView:(UITableView *)tableView canMoveRowAtIndexPath:(NSIndexPath *)indexPath { return YES; } -(void)tableView:(UITableView *)tableView moveRowAtIndexPath:(NSIndexPath *)sourceIndexPath toIndexPath:(NSIndexPath *)destinationIndexPath { NSInteger fromRow = [sourceIndexPath row]; // 获取移动某处的位置 NSInteger toRow = [destinationIndexPath row]; // 从数组中读取需要移动行的数据 id object = [self.dataArray objectAtIndex:fromRow]; // 在数组中移动需要移动的行的数据 [self.dataArray removeObjectAtIndex:fromRow]; // 把需要移动的单元格数据在数组中,移动到想要移动的数据前面 [self.dataArray insertObject:object atIndex:toRow]; }