отображение в UITableView объектов CoreData, упорядоченных в наборе - PullRequest
0 голосов
/ 25 мая 2010

У меня проблемы с отображением объектов из CoreData в табличном представлении. У меня есть 2 вида сущностей: Sample и SampleList. Важно знать, что SampleList имеет атрибут sampleSet, который представляет собой набор выборок (сущность Sample)

Сначала мне удалось отобразить каждый SampleList. Вот viewDidLoad:

NSFetchRequest *request = [[NSFetchRequest alloc] init];
NSEntityDescription *entity = [NSEntityDescription entityForName:@"SampleList" inManagedObjectContext:managedObjectContext];
[request setEntity:entity];

NSSortDescriptor *sortDescriptor = [[NSSortDescriptor alloc] initWithKey:@"lastSampleDate" ascending:NO];
NSArray *sortDescriptors = [[NSArray alloc] initWithObjects:sortDescriptor, nil];
[request setSortDescriptors:sortDescriptors];
[sortDescriptor release];
[sortDescriptors release];

NSError *error;
NSMutableArray *mutableFetchResults = [[managedObjectContext executeFetchRequest:request error:&error] mutableCopy];

if (mutableFetchResults == nil) {
// Handle error
}

[self setSampleListArray:mutableFetchResults];
[mutableFetchResults release];
[request release];

После того, как я нажму на строку в моем tableView, я бы хотел отобразить в другом UITableView каждый семпл из SampleList выбранного.

Я думал, что смогу перейти к подпредставлению SampleList mySampleList. Но тогда я не знаю, что с этим делать, так как оно не организовано. Как я могу вернуть упорядоченный массив Sample (например, по атрибуту dateSample)?

Спасибо за ваше время!

1 Ответ

4 голосов
/ 25 мая 2010

Вы можете просто использовать методы NSSet и NSArray для sampleSet, чтобы получить упорядоченный массив:

sortedArray = [[sampleSet allObjects] sortedArrayUsingSelector:@selector(compare:)];

или если вы хотите указать конкретные дескрипторы сортировки вместо обычного метода сравнения:

sortedArray = [[sampleSet allObjects] sortedArrayUsingDescriptors:sortDescriptors];
...