Я новичок в Swift и в настоящее время пытаюсь разрешить моему приложению отображать маркеры в моем представлении Google Maps.Широта и долгота сохраняются в структуре массива.По какой-то причине я не могу получить данные из моего массива. Итак, мои основные вопросы: почему он не работает и как он будет работать?
Кроме того, мне было интересно, сработает ли установка элементов struct для типа CLLocation?
struct pickerStruct
{
var lat: Double
var long: Double
}
func showPickers() {
//For every pickerStruct in pickers create a picker
//The marker should have the in pickers saved latitude and longitude
for pickerStruct in pickers {
let marker = GMSMarker()
marker.position = CLLocationCoordinate2D(latitude: pickers.lat, longitude: pickers.long)
marker.map = mapView
}
}
Ошибка, которую я получаю, говорит: «Значение типа '[pickerStruct]' не имеет члена 'lat'"
Откуда происходят сборщики:
Сборщикимассив, который получает данные из моей базы данных Firebase.
ref = Database.database().reference()
ref.child("locations").observe(.childAdded, with: { snapshot in
let newLat = snapshot.value as? NSDictionary
let lat:Double = (newLat?["lat"] as? Double)!
let newLong = snapshot.value as? NSDictionary
let long:Double = (newLong?["long"] as? Double)!
self.pickers.append(pickerStruct(lat: lat, long: long))
})