gpt4 book ai didi

core-data - Swift 中的 NSManagedObject 子类不能使用自定义访问器?

转载 作者:行者123 更新时间:2023-12-02 22:52:43 25 4
gpt4 key购买 nike

我在 Core Data 中使用 Swift 生成 NSManagedObject 的子类。有一个 transient 可选属性标题。(该可选不是Swift的可选,而是Core Data的可选。)所以我需要一个自定义 setter/getter 。我的代码是

class ShoppingList: NSManagedObject {

@NSManaged var title: String

func title() -> String {
return "something"
}
}

Objective-C 版本的 getter 工作正常。然而,Xcode 告诉我“func title() 是无效的重新声明”。我尝试使用计算属性,但得到“@Managed 属性不能使用计算属性”。

所以我的问题是,是否有另一种方法可以在 NSManagedObject 子类化的 Swift 版本中获取自定义访问器(getters)?

最佳答案

您可以为计算属性使用不同的名称,并让它返回标题变量。

@NSManaged var title: String

var myTitle : String {
return self.title
}

这对你有用吗?Apple 在很多地方都这样做,通过在前面添加下划线来命名实际的 var,并使用相同名称但不带下划线的计算属性

关于core-data - Swift 中的 NSManagedObject 子类不能使用自定义访问器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25655952/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com