0

CoreData からのオブジェクトを tableView に表示するのに問題があります。と の 2 種類のエンティティがSampleありSampleListます。知っておくべき重要なことは、aにはサンプルのセット (サンプルの実体) でSampleListある属性があるということです。sampleSet

まず、すべて表示することに成功しました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];

UITableViewtableView の行をクリックすると、選択したすべてのサンプルを別のサンプルに表示したいと思いますSampleList

サブビューに渡せると思いましたSampleList mySampleList。でも、整理されていないのでどうしたらいいのかわからない。の順序付けられた配列を返すにはどうすればよいですか (たとえば、属性でSample順序付けられます)。dateSample

お時間をいただきありがとうございます!

4

1 に答える 1

4

NSSetandNSArrayメソッドを使用するだけでsampleSet、順序付けられた配列を取得できます。

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

または、通常の「比較」メソッドの代わりに特定のソート記述子を指定する場合:

sortedArray = [[sampleSet allObjects] sortedArrayUsingDescriptors:sortDescriptors];
于 2010-05-25T14:30:16.763 に答える