linkedObjectsProperties覆盖swift 2.0

时间:2016-06-29 22:50:40

标签: ios swift realm realm-cocoa

我正在使用带有Swift 2.0项目的realm-cocoa(v1.0.1)(需要objective-c互操作性),并且无法覆盖linkedObjectsProperties方法。

我已经按照Realm文档(https://realm.io/docs/objc/latest/#inverse-relationships)并在我的RLMObject子类中定义了我的函数覆盖,如下所示:

override class func linkingObjectsProperties() -> NSDictionary {
    return ["owners": RLMPropertyDescriptor(withClass: Person.self, propertyName: "dogs")]
}

编译器然后抱怨,说"方法不会覆盖超类中的任何方法"。

如果我使用@objc为定义添加前缀,则错误将更改为"使用选择器覆盖方法' linkingObjectsProperties'具有不兼容的类型'() - >的NSDictionary'

有什么想法吗?

谢谢!

1 个答案:

答案 0 :(得分:0)

+[RLMObject linkingObjectsProperties]class func linkingObjectsProperties() -> [String : RLMPropertyDescriptor]的形式向Swift公开。更新覆盖以匹配该签名应该可以解决问题。