2017-02-17 59 views
-2

所以我試圖做一個谷歌地圖基於應用程序,並試圖從JSON文件中的數據,我已經得到了。從Json的數組中檢索數據對象斯威夫特

數組是這樣的:

collection : [Marker] = [Marker(id: "13", name: "Place 13", lat: 12.2130003, lng: 12.2130003),Marker(id: "16", name: "Place 16", lat: 12.184, lng: 12.184), Marker(id: "25", name: "Place 25", lat: 12.2250004, lng: 12.2250004), Marker(id: "22", name: "Place 22", lat: 12.1780005, lng: 12.1780005)] 

標記是一個結構,我把從JSON解析數據,現在我試圖讓所有的lattitude和經度數據,並提出谷歌地圖從它的標記。事情是我可以用像這樣的方法:

func getLatLng() { 
    let marker1Lat = collection[0].lat 
    let marker1Lng = collection[0].lng 
} 

但它看起來很糟糕。

回答

2

如果你想添加的collection陣列中的所有標記,那麼你需要簡單地遍歷數組,並添加地圖標記。

for item in collection { 
    let marker = GMSMarker() 
    marker.position = CLLocationCoordinate2D(latitude: item.lat, longitude: item.long) 
    marker.title = item.name 
    marker.map = self.googleMapView 
} 
+0

不幸的是沒有標記顯示出來.. – Magnifique

+0

所以對不起,隊友,不知道這一點。 – Magnifique

+0

@Tonamini它好吧,它發生了:) –