什么是核心数据? 核心数据是用于管理应用程序中的模型层对象的框架。 您可以使用Core Data作为框架来保存,跟踪和修改iOS应用程序中的数据,但是您必须了解Core Data不是数据库。 核心数据使用SQLite,因为它是持久存储,但框架不是数据库。 核心数据管理对象图,跟踪数据中的更改并执行许多其他操作。 实际上,Core Data减少了为支持模型层而编写的代码数量。 它可以轻松地自动管理和更新内存中的对象,并处理复杂的对象图,而不会影响设备的内存管理。 在本文中,我们9series 是顶级iOS应用程序开发公司 ,在这里我们将讨论核心数据,对象模型和操作等的基本技术。 托管对象模型 核心数据功能取决于您创建的用于描述应用程序的实体,属性以及它们之间的关系的架构类型。 核心数据使用称为Managed Object Model的模式,这是NSManagedObjectModel的示例。 简而言之,核心数据模型越丰富,对支持您的应用程序越有帮助。 现在,让我们创建一个带有核心数据的单视图iOS应用程序,选中该复选标记以查看核心数据的基础知识。 当您创建一个带有核心数据选中标记的项目时,您会看到两个值得注意的变化,例如, demo.xcdatamodeld的新文件 Appdelegate文件包含核心数据堆栈代码 Appdelegate具有应用程序的持久性容器。 此实现创建并返回一个已为应用程序加载商店的容器。 新的demo.xcdatamodeld充当我们要保存的数据的模型层。 我们可以像其他任何关系数据库一样轻松地从UI添加实体,属性和关系。 将新记录添加到核心数据 将记录添加到核心数据的过程包括以下步骤: 需要引用一个持久容器 创建上下文 添加新实体 添加新记录 设置所有键的记录值 让我们在ViewController中编写所有内容。 在AppDelegate中设置容器后,我们现在需要引用该容器。 让我们为用户保存数据: 现在我们已经在托管对象中设置了数据。 是时候将其保存在数据库中了。 我们必须使用do try and catch块来编写它。 从核心数据中获取数据 要从数据库中获取对象,您将使用NSFetchRequest访问该数据。 从核心数据中获取对象是此框架的最主要特征。 在此示例中,您可以使用NSFetchRequest开始,该请求解释了要返回的数据。 我们可以使用此代码从实体中获取数据。 观察托管对象的上下文 核心数据框架具有多个API,这些API可让我们实现类似NSFetchedResultsController类的行为。 如果在托管对象上下文中发生任何更改,则框架本身会使用通知来通知我们。 发生更改时,每个受管对象上下文都会触发三种类型的通知: contextObjectsDidChange contextWillSave contextDidSave […]