【问题标题】:realm class property cannot be marked dynamic领域类属性不能标记为动态
【发布时间】:2015-09-17 21:22:04
【问题描述】:

我刚刚升级到 Xcode 7 和 Swift 2,这条线抛出了 Property cannot be marked dynamic because its type canot be represented in Objective-C

dynamic var log = List<LogEntry>()

【问题讨论】:

    标签: ios swift realm


    【解决方案1】:

    Realm 更改了它的文档:Realm Swift 0.95.0 现在你应该使用let 而不是dynamic var

    【讨论】:

    • realm.io/docs/swift/latest/#property-attributes (0.97.0) "这里有两个例外: List 和 RealmOptional 属性不能声明为动态的,因为泛型属性不能在 Objective-C 运行时中表示,它用于动态属性的动态调度,应始终使用 let 声明。"
    【解决方案2】:

    我遇到了类似的问题,并花了很长时间试图弄清楚。我的主要问题是我在看到编译问题后检查并删除了所有dynamic 标志,但它几乎无法访问任何数据。从所有对多对象中删除 dynamic 似乎是安全的,例如List&lt;Object&gt;() 但把它们留在那里。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-09-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-01-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多