- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个 NSArray
与 strings
不遵循模式的对象,例如:
D C A Z X。
当我尝试对类似的 array
进行排序时按升序,我得到:
A C D X Z。
这不是我想要的结果,我需要实现与引用数组相同的模式。我只是不确定如何使用 NScomparisonResult
或 NSSortDescriptor
.
第二个array
,可能不完全相同,但我需要有相同的顺序。例如,也许我有 D X A。基于引用 array
我需要得到 D A X。
更新:
好的,这是我的代码:
- (PFQuery *)queryForTable {
PFQuery *query = [PFQuery queryWithClassName:self.parseClassName];
// This is the reference array
NSArray *labels = [@"Café da Manhã", @"Meio da Manhã", @"Almoço", @"Meio da Tarde", @"Final da Tarde", @"Jantar", @"Pós-Treino"];
NSSortDescriptor *descriptor =
[NSSortDescriptor sortDescriptorWithKey:@"refeicao" ascending:YES comparator:^NSComparisonResult(id obj1, id obj2) {
NSUInteger index1 = [labels indexOfObject:obj1];
NSUInteger index2 = [labels indexOfObject:obj2];
return index1 - index2;
}];
[query orderBySortDescriptor:descriptor];
return query;
}
PFObject
s,我需要通过键
refeicao
订购.
最佳答案
您将需要编写自己的比较方法(可以与排序描述符相关联,因为您可以将其实现为 NSComparator
)。
此方法需要在引用数组中找到要比较的 2 个字符串,并使用索引位置进行比较。不会比较实际值,一切都是关于引用数组中相应字符串的位置。
关于ios - 使用 sortDescriptors 基于另一个 NSArray 对 NSArray 进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21879457/
我有一个歌曲实体和一个播放列表实体。 播放列表可以有多个歌曲,歌曲可以链接到多个播放列表。 我有一个 ListToSongs 实体,它维护将歌曲添加到播放列表的顺序。我没有在 ios5 中使用“有序关
我有一个 NSArrayController (A) 将其绑定(bind)到另一个 NSArrayController (B),我试图对 NSArrayController (B) 进行排序,但不起作
我有一个 Table View Controller,其中包含由 fetchResultsController 处理的 Formation 列表。 这是我的核心数据实体的样子: 我尝试按 dateRa
我有一个 NSTableView,其列绑定(bind)到 NSArrayController。 表格 View 显示电子邮件列表: 标记未读 主题 附件大小 用户可以单击“附件大小”列对列表进行排序,
如何设置我的 fetchedResultsController.sortDescriptors 以包含使用键路径的排序描述符,例如 @"foo.name"? 干杯 尼克 最佳答案 尽管NSSortDe
let dateSort = NSSortDescriptor(key: "created", ascending: false) fetchRequest.sortDescriptors = [da
我正在从核心数据中获取。我有一个 bool 值属性,它与时间属性一起保存。我需要返回 bool 为真的日期数组。我无法让它工作,我要么得到一组空日期,要么崩溃。 func datesWithCompl
我有一个 NSArray与 strings不遵循模式的对象,例如: D C A Z X。 当我尝试对类似的 array 进行排序时按升序,我得到: A C D X Z。 这不是我想要的结果,我需要实现
我在用 Swift 编写的 Cocoa 应用程序中使用基于 View 的 NSTableView,并希望在两个表列上实现排序功能。但是,在 Objective-C 中,您可以通过先在 Attribut
我有一个类型为“Restaurant”的数组,它的 NSSet 为“Rating”。评分有一个 ID 和一个值。 我想按 ID 为 01 的评分从高到低对餐厅的数组进行排序。 类似下面的内容,但如何在
两种获取 NSManagedObject 排序数组的方法,哪一种更好?或者它们之间有什么性能差异吗? /// Method 1: - use sortDescriptors let fetchRequ
我是一名优秀的程序员,十分优秀!