我有一个可编辑的pList,其中包含以下格式的字符串字典:
21-10-2010 -> @"item1"
20-10-2010 -> @"item2"
19-10-2010 -> @"item3"
18-10-2010 -> @"item4"
17-10-2010 -> @"item5"
ect...
因此,将stringformat中的日期作为键,将具有不同信息的字符串作为值。字典的长度最多可达200个键。并且密钥不一定按顺序排列,可能会遗漏一些日期。
我想在UITableViewCellStyleValue2的tableview中显示键及其值。目前我将它们放在tableview中,方法是在启动时将所有键写入全局NSMutableAray:
keysArray = [myDictionary allKeys];
然后在tableview方法中,我通过使用普通的indexPath作为数组的索引来放入它们:
cell.textLabel.text = [keysArray objectAtIndex:indexPath];
cell.detailTextLabel.text = [myDictionary objectForKey: [keysArray objectAtIndex:indexPath]];
这是有效的,但日期不符合最高日期的顺序。这是因为'allKeys'函数以随机顺序返回键(在字典中也没有自己的顺序)。
循环遍历全局数组的整个方法,并将此值作为另一个字典的密钥,从外部pList文件加载,实际上非常复杂和笨拙。所以我正在寻找一种按日期排序NSMutableArray的方法,或者更好的方法来实现我想要的东西。
感谢您的聆听,John。
答案 0 :(得分:0)
您可以创建按日期排序的数组。您将索引此数组indexPath.row以询问项值。
要对可以使用的数组进行排序:
-sortedArrayUsingComparator:
[array sortedArrayUsingComparator:^(id obj1, id obj2) {
// Your comparaison
}];