我有一个名为“ TruckNumber”的核心数据实体,该实体具有一个字符串,因为它是唯一的属性。该字符串通常是1-3位整数(作为字符串),但有时可以包含诸如TMP9之类的字母。该属性的名称为“ itsNotANumma”。我正在执行获取请求以填充选择器,但是没有对其进行排序,我也不知道为什么。我已经在其他实体上为其他选择器使用了这种精确的技术,但从未遇到问题。请帮助...这是相关代码:
// Fetch truck numbers
NSFetchRequest *truckNumberFetchRequest = [[NSFetchRequest alloc] init];
NSEntityDescription *truckEntity = [NSEntityDescription entityForName:@"TruckNumber" inManagedObjectContext:self.managedObjectContext];
[truckNumberFetchRequest setEntity:truckEntity];
// Sort Descriptor
NSSortDescriptor *truckDescriptor = [[NSSortDescriptor alloc] initWithKey:@"itsNotANumma" ascending:YES];
NSArray *truckSortDescriptors = [[NSArray alloc] initWithObjects:truckDescriptor, nil];
[inventoryFetchRequest setSortDescriptors:truckSortDescriptors];
error = nil;
NSArray *truckResults = [managedObjectContext executeFetchRequest:truckNumberFetchRequest error:&error];
if (error)
NSLog(@"Unresolved error while saving context: %@, %@", error, [error userInfo]);
truckNumbersArray = [[NSMutableArray alloc] init];
for (TruckNumber *truckNumber in truckResults)
{
[truckNumbersArray addObject:truckNumber.itsNotANumma];
}
这是我的卡车号数据模型:
结果如下:
最佳答案
看起来您有一个简单的错字:
[inventoryFetchRequest setSortDescriptors:truckSortDescriptors];
应该:
[truckNumberFetchRequest setSortDescriptors:truckSortDescriptors];
无论如何,我都会假设阅读该代码。
关于ios - NSSortDescriptor不起作用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12840531/