使用NSMutableArray中的NSDictionaries对单元格进行排序

时间:2011-08-04 22:30:47

标签: nsmutablearray nsdictionary cells

我将NSDictionaries存储在NSMutableArray中。每个NSDictionary都有一个NSNumber。所以现在,我的tableview将按照它们在数组中的排序方式显示单元格。我想要做的是将单元格从最高NSNumber重新排序到最低NSNumber,那么我将如何对NSMutableArray中的所有NSDictionary执行此操作。我可能需要一个for循环或类似的东西,但我不知道该怎么做。

我的NSDictionaries中也有NSDate(非格式化),所以我如何根据其中的最新日期对NSDictionaries进行排序?

谢谢!

1 个答案:

答案 0 :(得分:1)

您需要使用NSMutableArray的sortedArrayUsingSelector方法并提供排序功能,如下所示:

NSMutableArray *yourSortedArray;
yourSortedArray = [originalArray sortedArrayUsingSelector:@selector(yourCompareFunction:)];

...

- (NSComparisonResult)yourCompareFunction:(NSDictionary *)otherObject {
   return [[self objectForKey:@"number_key"] compare:[otherObject objectForKey:@"number_key"]];
}

我没有测试过这个,但这就是想法。