Objective c 永久保存CoreData

Objective c 永久保存CoreData,objective-c,ios,xcode,Objective C,Ios,Xcode,我整个下午都在努力让我的应用程序的CoreData部分正常工作,几乎让它正常工作。问题是当应用程序终止时(从多任务菜单中删除),CoreData没有保存适当的值。剩下的值是我输入到实体中的初始值(在我的例子中是0,定义为NSString),而不是用户输入的新值。因此,问题是在应用程序关闭后永久保存新值,并且在加载应用程序时不再显示初始值 实体名称:Gameinfo 属性:score 我不确定我做错了什么。如果有人能帮助我,我将不胜感激。 谢谢 您根本没有保存该值。您只是将其分配给Gameinfo

我整个下午都在努力让我的应用程序的CoreData部分正常工作,几乎让它正常工作。问题是当应用程序终止时(从多任务菜单中删除),CoreData没有保存适当的值。剩下的值是我输入到实体中的初始值(在我的例子中是0,定义为NSString),而不是用户输入的新值。因此,问题是在应用程序关闭后永久保存新值,并且在加载应用程序时不再显示初始值

实体名称:
Gameinfo

属性:
score

我不确定我做错了什么。如果有人能帮助我,我将不胜感激。 谢谢


您根本没有保存该值。您只是将其分配给
Gameinfo
对象。要实际保存它,请在托管对象上下文上调用
save:
方法:

    ...
    [[someArray objectAtIndex:0] setValue:[self showKey] forKey:@"score"];
    NSError *saveError = nil;
    [[appDelegate managedObjectContext] save:&saveError];
}

您根本没有保存该值。您只是将其分配给
Gameinfo
对象。要实际保存它,请在托管对象上下文上调用
save:
方法:

    ...
    [[someArray objectAtIndex:0] setValue:[self showKey] forKey:@"score"];
    NSError *saveError = nil;
    [[appDelegate managedObjectContext] save:&saveError];
}

看起来您没有在任何地方调用
[上下文保存:错误]
。这就是将更改移动到永久存储的原因。

看起来您并没有在任何地方调用
[context save:error]
。这就是将更改移动到永久存储的原因。

你说得对!我错过了一件多么愚蠢的事。非常感谢你,会接受你是正确的!我错过了一件多么愚蠢的事。非常感谢,我会接受的