0

我的应用程序从 Core Data 中检索一些数据,例如某人的姓名、生日、家庭地址等。

我的初始视图计算了人与人之间的距离,但是我如何加载按顺序降序到表格视图的距离。

也许是一个愚蠢的问题,但我试图使用 NS Mutable 字典来实现这一点,但不幸的是,我将键和值添加到 nsmutable 字典中,但无法将其加载到表视图中。关于如何使它工作或我应该使用什么来代替可变字典的任何想法?

4

1 回答 1

1

我不确定我能否准确辨别您要完成的工作,或者其中的哪一部分给您带来了麻烦,但也许 的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
}
于 2013-10-27T22:34:43.160 回答