我有一个数组和一个tableview,它从数组中获取数据。当我在iPhone上查看表格视图时,它的ofc,未排序以及在我编写它们时列出的内容。
我想在表格视图中对数组进行排序,所以它们没有像这样列出:
d
一种
G
F
小号
但改为这样列出:
一种
乙
C
d
Ë
等等...
我怎样才能做到这一点?
这是我的数组:
stationList = [[NSMutableArray alloc] init];
[stationList addObject:@"A"];
[stationList addObject:@"B"];
[stationList addObject:@"C"];
如何将数组加载到tableview数组中?
加载数组:
NSString *cellValue = [stationList objectAtIndex:indexPath.row];
cell.textLabel.text = cellValue;
最佳答案
使用[stationList sortUsingFunction:compareLetters context:whateveryouwant_ornil]
和
NSComparisonResult compareLetters(id t1, id t2, void* context) {
do the tests you want beetween t1 and t2, and return the result
like :
if (the test) return NSOrderedDescending, NSOrderedAscending or NSOrderedSame
}
在您的示例中,您应该执行以下操作:
NSMutableArray stationList = [[NSMutableArray array];
[stationList addObject:@"A"];
[stationList addObject:@"B"];
[stationList addObject:@"C"];
[stationList sortUsingFunction:compareLetters context:nil];
NSComparisonResult compareLetters(id t1, id t2, void* context) {
return [t1 compare:t2];
}