objective-c - 序列化/存储 UIView 及其 subview

标签 objective-c cocoa ios core-data nscoding

我是一名相对较新的 iOS 开发人员,之前的大部分经验都来自 .NET。 我的应用程序是一个类似 Canvas 的系统,因为有一个父 UIView,其中包含用户放置/调整大小/等的所有对象作为 subview 。我希望能够将这些位置/配置保存到命名文件中。

在 .NET 中,我会简单地将 UIView 子类化,给它一个“标题”属性,然后将其序列化到文件中,然后反序列化它们以将它们加载回来,但在 Cocoa 中我完全迷失了。

最初我认为我可以使用 NSCoding 来做到这一点,但这似乎不是保存多个文件的好方法。

所以我查看了 Core Data,但我不确定如何创建现有 Cocoa UIKit 类(如 UIView)的 Core Data 对象。

我用谷歌搜索了一段时间,但找不到关于这种困境的任何信息。 我应该使用什么,最好的方法是什么?

最佳答案

您可能可以使用 NSKeyedArchiver 来完成它,因为 UIView 实现了 NSCoding。然而,更面向 MVC 的设计是让用户通过移动 View 来操作数据模型。要保存,您需要存档模型而不是 View 本身。

关于objective-c - 序列化/存储 UIView 及其 subview ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5415437/

相关文章:

ios - 如何比较两幅图像并突出差异?

cocoa - 使用 cocoa 调用 C 函数

objective-c - 在 NSTextView 中创建指向某些文本的超链接

ios - 如何在另一个上下文中绘制pdf上下文?

ios - 如何使用 Swift 在 iOS 中同时调用 20 个 Web 服务?

ios - 如何以编程方式选择 uitableview 行

ios - 通过 NSSecureCoding 解码 NSArray 时的奇怪行为

ios - 如何在 uiview 中添加边框?

objective-c - 当为同一事件提供多个 IBAction 时,IBAction 会触发什么命令

iOS - 显示在 Storyboard 而不是键盘中制作的 UIPIckerView