엔티티가 Tags
이고 가져 오기를 수행하여 모두 Tags
이되고 NSFetchedResultsController
에 할당하려고합니다. 그러나 가져온 결과의 첫 번째 객체는 Tag
이고 tagName
속성은 "All"
이고 그 다음 나머지는 알파벳순으로 정렬되기를 원합니다. 현재 나는 알파벳 순서로 모든 태그를 반환하지만,이 태그는 "All"
이라는 이름의 태그를 항상 맨 먼저, 그 다음 나머지를 알파벳 순서로 원합니다.여러 술어가있는 요청 가져 오기?
NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init];
NSEntityDescription *entity = [NSEntityDescription
entityForName:@"Tag" inManagedObjectContext:appDelegate.managedObjectContext];
[fetchRequest setEntity:entity];
NSSortDescriptor *lastDescriptor =
[[[NSSortDescriptor alloc] initWithKey:@"tagName"ascending:YES selector:@selector(localizedCaseInsensitiveCompare:)] autorelease];
[fetchRequest setSortDescriptors:[NSArray arrayWithObject:lastDescriptor]];
당신이 방법 localizedCaseInsensitiveCompare을 게시 할 수 있습니다 : - (NSComparisonResult) localizedCompare가 : 선택기는 은 같은 방법으로 서명을해야합니다? 새로운 솔루션을 만들 수 있지만 가장 좋은 방법은 실제 솔루션을 최적화하는 것입니다. – ggrana
그건 내 방법이 아니에요. 그냥 주어진 기본 메서드는 – Snowman