0

uid のリストがあり、それらの uid を持つ Core Data オブジェクトを取得する必要があります。

NSPredicate *predicate = [NSPredicate predicateWithFormat:@"uid IN %@", uids];
[request setPredicate:predicate];

ここで、リストされた uid と同じ順序でオブジェクトを維持したいと考えています。したがって、配列が [3, 1, 2] の場合、返されるオブジェクトもその順序である必要があります。

ソート記述子を設定しないことは のオプションではないNSFetchedResultsControllerため、ソート記述子を何に設定すればよいですか?

4

2 に答える 2

0

ソート記述子はNSFetchRequestインスタンスに設定できます。

[request setSortDescriptors:descriptors];

はインスタンスdescriptorsの配列です。NSSortDescriptor

ANSSortDescriptorは次のように作成できます。

NSSortDescriptor *sortDescriptorForKey = [[NSSortDescriptor alloc] initWithKey:@"someKey" ascending:YES]; // YES or NO based on your needs

あなたの質問について、 の順番はuids何ですか? 私の経験に基づいて(これまで考えたことはありませんでした)、達成しようとしていることはできません。とにかく、あなたの記述子を複製することができuidsますNSFetchRequest.

たぶん、誰かが他のアイデアを持っているかもしれません。

于 2013-01-04T13:50:46.600 に答える