我有一个问题,无论何时我使用coredata插入数据,一切都很好。但是在检索时,我总是检索到相同的对象。我用add方法插入了多个属性的actor对象,比如id,name,address等,我可以看到插入的所有东西(实际上我是从xml文件中检索的)。我的设置方法是:=coredata问题
[poi setActorCity:[NSString stringWithFormat:@"%@",[poi1 objectAtIndex:j]]];
其中,poi是我的一个对象managedObjectClass POI1
。这是一个问题吗? j指数仅用于跟踪poi1数组中的xml值。请帮助...
- (无效)的addEvent {
[actorsArray removeAllObjects]
NSEntityDescription * entity1 = [NSEntityDescription entityForName:@“POI1”inManagedObjectContext:self.managedObjectContext]; POI1 * poi =(POI1 *)[NSEntityDescription insertNewObjectForEntityForName:@“POI1”inManagedObjectContext:managedObjectContext];
for(NSInteger i=0;i<[Actors count];i++)
{
NSMutableArray *poi1=[[NSMutableArray alloc]init];
poi1=[Actors objectAtIndex:i];
for(int j=0;j<[poi1 count];j++)
{
if(j==1)
{
[poi setActorName:[NSString stringWithFormat:@"%@",[poi1 objectAtIndex:j]]];
} //Like this it inserts for every attribute
}
[actorsArray insertObject:poi atIndex:i];
[poi release];
}
[self saveAction]; //saving the managedObjectContext
}
这我取方法...
- (无效)fetchResult {
NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init];
NSEntityDescription *使用实体= [NSEntityDescription entityForName:@ “再喷射Pol1” inManagedObjectContext:self.managedObjectContext];
[fetchRequest setEntity:entity1];
NSArray *items = [self.managedObjectContext
executeFetchRequest:fetchRequest error:&error];
for(NSInteger k=0;k<[items count];k++)
{
POI1 *_poi=[[POI1 alloc]init];
_poi = [items objectAtIndex:k];
NSString *str=[NSString stringWithFormat:@"%@",[_poi actorName]]; //This' for testing... Shows me same name every time..,
}
[fetchRequest release];
}
嗨,如果您在一行的前面添加4个空格,它将被格式化为代码。 。 。 – deanWombourne 2009-12-09 13:02:37
我们需要关于该问题的更多信息;你能向我们展示创建你的poi对象的循环 - 我认为文森特可能会走在正确的轨道上,但我们需要看到更多的代码,以确保:) – deanWombourne 2009-12-09 13:04:36
我将你的两个相同的问题合并为一个。请不要发布重复。如果您希望更多人看到您的问题,可以通过添加新信息和有关您所面临问题的更多详细信息来编辑原件。 – 2009-12-09 15:13:49