2016-03-17 21 views
2
訪問原始類型

我使用ObjectMapper與RealmSwift一起和我的課是這樣的:在RealmSwift

class Location: Object, Mappable { 
    var Lat : Float = 0 
    var Lng : Float = 0 

    required convenience init?(_ map: Map) { 
     self.init() 
    } 

    func mapping(map: Map) { 
     Lat <- map["Lat"]; 
     Lng <- map["Lng"]; 
    } 
} 

這個位置類在另一個類Vehicle.swift這也是境界對象的一個​​子類中引用

我能夠用線來訪問車輛的位置:

let location : Location = vehicle.VehicleLocation! 

打印位置的值給我的輸出:

location is Location { 
    Lat = 49.24122; 
    Lng = -123.1153; 
} 

我使用Realm瀏覽器打開了領域數據庫,並且這些值與數據庫中的值相對應。

但是,當我嘗試訪問LatLng值時,我得到0.0。我試圖訪問這些使用:

let lat : Float = vehicle.VehicleLocation!.Lat 
let lng : Float = vehicle.VehicleLocation!.Lng 

任何想法可能發生什麼?

回答

2

所有存儲的領域屬性必須定義爲dynamic

變化:

var Lat : Float = 0 
var Lng : Float = 0 

要:

dynamic var Lat : Float = 0 
dynamic var Lng : Float = 0