【问题标题】:Swift 4 - How to save NSAttributedstring in core dataSwift 4 - 如何在核心数据中保存 NSAttributedstring
【发布时间】:2018-03-08 01:07:29
【问题描述】:

在.xcdatamodeld文件中,我做了一个属性content,并使其类型transformable。在创建 NSManagedObject 子类之后,我在属性文件中发现,content 的类型是 NSObject? .现在我将 NSObject 更改为 NSAttributedstring? ,然后运行它,构建成功。但是当我保存数据时,这一次发生了很多错误,这些错误大约是断点处的UIApplication.shared.delegate as! AppDelegate。我认为我在核心数据中保存 NSAttributedstring 的方法有更多问题。如何使用可转换类型做到这一点?谢谢!

【问题讨论】:

    标签: ios swift core-data nsattributedstring


    【解决方案1】:

    我为 Obj-c 和 Swift 找到了最简单的解决方案。

    在 Core Data 中你可以添加一个属性,例如我们称之为attributedText。然后将其类型定义为Transformable。创建 .h 文件后,将 attributedText 的数据类型从 NSDictionary 更改为 NSAttributedString。

    现在您可以将 NSAttributedString 保存在 Core Data 中。

    像这样回忆它:

    myObject.attributedText
    

    它将返回您的NSAttributedString。

    对于 Swift: 尝试创建一个 Transformable 类型的列。然后创建你的NSManagedObjectSubclass,在你的情况下这将是一个快速文件。然后只需更改文件中列的类型,以便您拥有类似@NSManaged var name: NSAttributedString 的内容。

    希望对你有帮助。

    【讨论】:

    • 在这个问题中,我只是在你的回答中做了swift部分,并且在运行时发生错误,那么如何完成objective-c部分?如何创建 .h 文件以及如何更改数据类型?你介意具体教我吗?谢谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-19
    • 1970-01-01
    • 2017-10-14
    • 1970-01-01
    相关资源
    最近更新 更多