2016-01-16 25 views
5

Xcode 7.2, Swift 2.1.1 kullanıyorum. BenRealm: Swift `let` özelliği dinamik olarak işaretlenemiyor

class B: Object { 
    dynamic let lists = List<A>() 
} 

altında bir Realm modeli nesne var ama Swift derleyici söyleyerek bana bir hata veriyor:

kendi türü içinde temsil edilemiyor çünkü Mülkiyet gibi dinamik işaretlenemez Objective-C

Ben Diyar belgelerine gördüğünü söylüyor:

Diyar modeli özellikleri dy gerek Bu özelliklerin temel veri tabanı verisi için erişim sağlayıcı olabilmesi için namik var özniteliği.

Orada iki istisna bu şunlardır: Listesi ve jenerik özellikleri dinamik özelliklerinin dinamik sevk için kullanılan Objective-C çalışma zamanı, temsil edilemez çünkü RealmOptional özellikleri dinamik olarak ilan edilemez ve her zaman olmalı let

ile beyan Ama let ilan artık bu davayı çözmek için görünmüyor. Neyi kaçırıyorum? Eğer alıntı belgeler aşağıdaki (vurgu benim) içerir

cevap

3

: jenerik özellikler Objective-C çalışma zamanı temsil edilemez çünkü

Listesi ve RealmOptional özelliklerini dinamik olarak ilan edilemez, [...] ve her zaman let ile bildirilmelidir.

Bu özellik şöyle beyan edilmelidir anlamı:

let lists = List<A>() 

Diyar Swift belgeler son zamanlarda umarım bildirimleri farklı türleri için şartları netleştiren bir property declaration cheatsheet kazandı.

+0

: D * vurma kafası * – tropicalfish

İlgili konular