0
我正在尝试使用以下代码找到核心数据记录的索引,其中[self numItems]返回记录数。代码平均需要大约0.2秒才能执行。我有兴趣加快速度。提前致谢。有没有一种有效的方法来确定特定核心数据记录的索引
- (NSInteger) indexWithTaskID:(NSInteger)eventID
{
for (NSInteger i=0;i<[self numItems];i++) {
NSIndexPath *indexPath = [NSIndexPath indexPathForRow:i inSection:0];
NSManagedObject *managedObject = [self.fetchedResultsController
objectAtIndexPath:indexPath];
NSInteger myEventID = [(NSNumber *)[managedObject valueForKey:@"eventID"] intValue];
if (myEventID == eventID) {
return i;
}
}
return -1;
}
你称之为什么情境?如果你有完整的managedObject,你可以调用'[self.fetchedResultsController indexPathForObject:managedObject]'。 – joshOfAllTrades 2012-07-08 03:00:32
当这个方法被调用时,我没有特定的managedObject。我只有eventID。谢谢。 – 0x141E 2012-07-08 03:16:02
我仍然对上下文感到好奇。 – joshOfAllTrades 2012-07-08 03:18:12