ios - 在 CoreData 中存储 NSMutableAttributedString 的简单方法

标签 ios iphone cocoa-touch core-data

我试图在 CoreData 中存储一个 NSMutableAttributedString,但遇到了问题,因为我的 NSMutableAttributedString 的一些属性包含 Core无法存档的基础对象。有没有一种简单的方法可以让这个对象存储在 CoreData 中,而不必手动做一些乱七八糟的事情?

最佳答案

NSMutableAttributedString 符合 NSCoding,这意味着它知道如何将自己转换为 NSData 并通过协议(protocol)实现Core Data 知道如何使用。

使属性“可转换”,然后只为其分配属性字符串。由于它是可转换的,Core Data 将在您分配值时使用 NSCoding 将其转换为 NSData,并在您读取它时将其转换回属性字符串。

请注意,您将无法使用谓词来过滤此字段的结果。但是存储和检索它很简单。

关于ios - 在 CoreData 中存储 NSMutableAttributedString 的简单方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20648398/

相关文章:

ios - 使用 AFNetworking 上传照片时出错

iphone - 图像加载到模拟器中但不加载到设备中?

ios - 如何在swift中使用视觉框架从其特征点提取外唇

ios - Firebase Cloud Messaging 没有第二次注册

iphone - 错误 "Archive for In-App Purchase ... is invalid. The package contains an executable at ' 内容/xyz.m4a'"

iphone - 我可以修复崩溃,但我不明白为什么会这样

ios - TableViewCell 为零

ios - 在 Swift 中使用 uiimagePickerController 在同一 View Controller 中选取两个不同的图像

iphone - UITableView 滚动问题

ios - 如何以编程方式关闭/禁用 iOS 11 中引入的屏幕截图弹出窗口?