我的应用程序从 Core Data 中检索一些数据,例如某人的姓名、生日、家庭地址等。
我的初始视图计算了人与人之间的距离,但是我如何加载按顺序降序到表格视图的距离。
也许是一个愚蠢的问题,但我试图使用 NS Mutable 字典来实现这一点,但不幸的是,我将键和值添加到 nsmutable 字典中,但无法将其加载到表视图中。关于如何使它工作或我应该使用什么来代替可变字典的任何想法?
我不确定我能否准确辨别您要完成的工作,或者其中的哪一部分给您带来了麻烦,但也许 的sortUsingComparator:^()
方法NSMutableArray
可能会有所帮助。
这是一个使用它通过比较每个元素的创建日期来对NSMutableArray
命名进行排序的简单示例。moviesOnly
//Order by NSURLCreationDateKey
[moviesOnly sortUsingComparator:^NSComparisonResult(NSURL* a, NSURL* b){
NSDate* a1 = [[a resourceValuesForKeys:[NSArray arrayWithObject:NSURLCreationDateKey] error:nil] objectForKey:NSURLCreationDateKey];
NSDate* b1 = [[b resourceValuesForKeys:[NSArray arrayWithObject:NSURLCreationDateKey] error:nil] objectForKey:NSURLCreationDateKey];
return [a1 compare:b1];
}
];
假设您可以对所有元素进行良好排序,那么像这样的比较器可以为您整理好 NSMutableArray。然后你将你的 UITableViewDataSource 协议方法指向你排序的 NSMutableArray。
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
//point the relevant property of each cell at the corresponding member of your now sorted NSMutableArray here
}