Ios 核心数据问题

Ios 核心数据问题,ios,swift,core-data,Ios,Swift,Core Data,我在我的应用程序中实现了核心数据 我正在视图中提取数据将出现方法 我正在将提取结果分配给本地数组 现在,我将textfileddidenditing方法更改为本地数组,但不保存到持久性存储 但当我再次谈到这个观点&尝试重新审视viewwillbeen方法时,改变后的方法仍然保持原样 帮助解决此问题 谢谢NSFetchRequest有一个属性includesPendingChanges,默认值为true。记住这一点 NSManagedObjectContext可以告诉您有关insertedbjec

我在我的应用程序中实现了核心数据

我正在
视图中提取数据将出现
方法

我正在将提取结果分配给本地数组

现在,我将
textfileddidenditing
方法更改为本地数组,但不保存到持久性存储

但当我再次谈到这个观点&尝试重新审视
viewwillbeen
方法时,改变后的方法仍然保持原样

帮助解决此问题


谢谢

NSFetchRequest
有一个属性
includesPendingChanges
,默认值为
true
。记住这一点

NSManagedObjectContext
可以告诉您有关
insertedbjects
updatedbjects
deletedbjects
的信息

以上所有内容都与脏上下文状态有关,即您所做的更改,但尚未保存

因此,当您不保存更改时,上下文仍然会因更改而变脏,每次您发出请求时,您得到的托管对象都会有这些更改。唯一可以过滤掉的是通过使用fetch请求标志插入或删除的对象(尽管这里不是这样)


如果您想消除更改,应使用撤消管理器,以便
回滚
重置
上下文。

请添加您的源代码code@User,这是一个复杂的代码,所以我只告诉了场景的流程。“并不总是需要代码”您将数组保存在哪里?它是否在您打开和关闭的同一视图控制器中?在
textFiledDidEndEditing
中保存时有什么错误?保存它的代码是什么?我只是按KVO更改字段的值,但没有保存到持久性存储。您仍然没有100%解释问题所在,也没有显示任何代码,因此除了上面的代码之外,我不可能说任何其他内容。重新获取时不会重置数组值。我将核心数据对象添加到数组中。之后,我通过KVO更改了数组的对象,但并没有存储在持久性中。当我尝试从数据库中重新获取对象时,它会显示具有更改值的结果数组。那么,您何时调用了reset,它是如何工作的呢。如果没有撤消管理器,回滚将不起作用。回滚适用于上一个事务,但不适用于最新的事务,因此不会重置最后一个事务