NSManagedObject 클래스에이라는 이름의 firstname 및 lastname 속성이 있습니다. 다른 속성이 필요합니다 uppercaseFirstLetter 이것은이 두 가지에서 계산됩니다. 재산권 uppercaseFirstLetter은 과도하지 않을 수 있으며코어 데이터의 계산 된 영구 속성
NSSortDescriptor *sortLastNameDescriptor =
[[NSSortDescriptor alloc] initWithKey: @"uppercaseFirstLetter"
ascending: YES
selector: @selector(localizedStandardCompare:)];
이 uppercaseFirstLetter 계산하기위한 코드입니다 sectionNamedKeyPath
[[NSFetchedResultsController alloc] initWithFetchRequest: fetchRequest
managedObjectContext: [DatabaseManager context]
sectionNameKeyPath: @"uppercaseFirstLetter"
cacheName: nil];
과 정렬 설명에 사용됩니다
NSString *aString = nil;
NSString *lastName = [self valueForKey:@"firstName"];
NSString *firstName = [self valueForKey:@"lastName"];
if (lastName.length) {
aString = [lastName uppercaseString];
} else if (firstName.length) {
aString = [firstName uppercaseString];
} else {
aString = @"#";
}
NSString *stringToReturn = [aString substringToIndex:1];
내가 어떻게 대문자 첫 글자과 코드의 변경 내용을 만들어야합니다. 이 결과를 얻으려면 어떻게해야합니까?
맞춤 설정 메소드를 추가 했습니까? 아니면'NSManagedObject'의 다른 메소드가 도움이 될까요? – Wain
관련 항목 : http://stackoverflow.com/questions/4874193/core-data-willsave-method – Wain