有谁知道或有一个例子,如何使用Swift处理核心数据 transient 值?我知道在属性之前使用@NSManaged,但无法弄清楚如何使用Swift编写逻辑来构建 transient 值。

最佳答案

选中数据模型中的 transient 字段,以标记特定属性(例如sectionTitle)。
为该实体创建类,它将看起来像

 class Message: NSManagedObject {

    @NSManaged var body: String?
    @NSManaged var time: NSDate?
    @NSManaged var sectionTitle: String?
}

编辑它,使它像这样:
class Message: NSManagedObject {

    @NSManaged var body: String?
    @NSManaged var time: NSDate?

    var sectionTitle: String? {
        return time!.getTimeStrWithDayPrecision()
        //'getTimeStrWithDayPrecision' will convert timestamp to day
        //just for e.g.
        //you can do anything here as computational properties
    }
}

更新-Swift4
使用Swift 4的@objc标记为:
@objc var sectionTitle: String? {
   return time!.getTimeStrWithDayPrecision()
}

10-07 21:07