私はコア データを含む iOS アプリケーションを持っています。関数の 1 つで、この方法でアプリケーションの 1 つのビューを表示するための情報をロードします。
NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init];
NSEntityDescription *entity = [NSEntityDescription
entityForName:@"MyDate" inManagedObjectContext:managedObjectContext];
[fetchRequest setEntity:entity];
NSError *error;
NSArray *fetchedObjects = [managedObjectContext executeFetchRequest:fetchRequest error:&error];
for (NSManagedObject *info in fetchedObjects) {
if ([[[info valueForKey:@"status"] description] isEqualToString:@"Done"]) {
NSArray *allTask = [[info valueForKey:@"taskes"] allObjects];
for (NSManagedObject *task in allTask) {
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyy-MM-dd"];
if (IsDateBetweenInclusive([task valueForKey:@"firstDate"], fromDate, toDate)) {
[taskArray addObject:task];
}
}
}
}
データベース内の情報が少ない場合、上記の方法は高速ですが、データベース内の情報が多い場合、3GS でそのビューを表示するのに数秒かかります。シミュレーターでは高速なので、私の質問は、コアの日付から情報を取得するための高速な方法はありますか? コアデータから取得したい属性と値を使用した高速呼び出しがあるかどうかわかりませんか?
ありがとう