我需要按特定顺序遍历 coredata 模型中的 NSArrayController。
可以说我的模型有这些列:
animal (string)
name (string)
age (int)
我想像这样遍历控制器:
for (animal *a in myNsArrayController.arrangedObjects)
{
// Rest of code
}
但我需要按动物年龄排序……我该怎么做?
搜索没有给我带来任何可用的结果..
我需要按特定顺序遍历 coredata 模型中的 NSArrayController。
可以说我的模型有这些列:
animal (string)
name (string)
age (int)
我想像这样遍历控制器:
for (animal *a in myNsArrayController.arrangedObjects)
{
// Rest of code
}
但我需要按动物年龄排序……我该怎么做?
搜索没有给我带来任何可用的结果..
试试这个,它以 AKV 的答案为基础,但使用您的代码并包含 for 循环。我认为这应该工作!
NSSortDescriptor *sort = [NSSortDescriptor sortDescriptorWithKey:@"age" ascending:YES];
NSArray *sortedArray = [myNsArrayController.arrangedObjects sortedArrayUsingDescriptors:[NSArray arrayWithObject:sort]];
for (animal *a in sortedArray)
{
// Rest of code
}
首先根据动物年龄对数组进行排序。
然后循环遍历它。
NSSortDescriptor *sort = [NSSortDescriptor sortDescriptorWithKey:@"animalAge" ascending:YES];
[yourArray sortUsingDescriptors:[NSArray arrayWithObject:sort]];
编辑:
NSArray *yourArray=myNsArrayController.arrangedObjects;