Ios UITableView加载后按编号重新排列单元格

Ios UITableView加载后按编号重新排列单元格,ios,objective-c,cocoa-touch,uitableview,Ios,Objective C,Cocoa Touch,Uitableview,我制作了一个应用程序,它从互联网下载JSON列表,并将JSON列表添加到UITableView中。内容进入UITableView后,我们开始通过GPS寻找用户。我希望UITableView在与行内容的距离后重新排列 我得到了每行的距离,但我不知道在距离之后如何重新排列和排序 有什么提示吗?我建议在收到更新信息后重新加载表格:每次从GPS收到更新信息时,都必须按距离对数据数组进行排序 现在您有了一个新的排序数组,可以重新加载该表,该表将显示已排序的单元格。如果您有一个数组,并且该数组包含要按其排序

我制作了一个应用程序,它从互联网下载JSON列表,并将JSON列表添加到UITableView中。内容进入UITableView后,我们开始通过GPS寻找用户。我希望UITableView在与行内容的距离后重新排列

我得到了每行的距离,但我不知道在距离之后如何重新排列和排序


有什么提示吗?

我建议在收到更新信息后重新加载表格:每次从GPS收到更新信息时,都必须按距离对数据数组进行排序


现在您有了一个新的排序数组,可以重新加载该表,该表将显示已排序的单元格。

如果您有一个数组,并且该数组包含要按其排序的值,则可以调用

- (NSComparisonResult)compare:(tableDataObject *)otherObject {
    return [self.distance compare:otherObject.distance];
}

//NSArray *sortedArray;
tableData = [tableData sortedArrayUsingSelector:@selector(compare:)];

获得排序数组后,只需在表上调用
-reloadData
,它就会根据您的值调用该表。(您需要确保将数组排序到tableview使用的数组中)

您还可以在UITableViewAnimation块中执行所有这些操作,使其动画效果非常像

[myTableView beginUpdates];
[myTableView reloadData];
[myTableView endUpdates];

它位于NSMutableDictionary中
sortedArrayUsingSelector
返回一个NSArray(不可变),因此您可能需要根据已排序的返回创建一个新的可变数组。