Не удается загрузить данные массива в массив классов в Swift - PullRequest
0 голосов
/ 25 августа 2018

Привет всем, я хотел бы получить данные из 3 массивов для создания аннотаций карты.Но я не мог загрузить данные из этих 3-х массивов в класс.Вот мой код:

Мой файл класса:

import MapKit
class Jobdata: NSObject, MKAnnotation {
    let title: String?
    let coordinate: CLLocationCoordinate2D
    init(title: String,  coordinate: CLLocationCoordinate2D) {
        self.title = title
        self.coordinate = coordinate
        super.init()
    }
}

Это мои массивы:

var jobNameST = [String]()
var jobLongitudeST = [Double]()
var jobLatitudeST = [Double]()

А это мой массив местоположений:

let jobLocations = [Jobdata(title: "test", coordinate: CLLocationCoordinate2D(latitude: 30.4692991035765, longitude:  -97.7660876))]

Я бы хотел добавить эти 3 массива в мой массив локаций.

1 Ответ

0 голосов
/ 25 августа 2018

Сначала вам нужно создать модель местоположения Надеюсь, все массивы имеют одинаковое количество записей Пожалуйста, проверьте раньше, если нет

struct Location 
{
    var title: String?
    var latitude: Double?
    var longitude: Double?

    init(title: String, latitude: Double, longitude: Double) {
        self.title = title
        self.latitude = latitude
        self.longitude = longitude
    }
}

создать массив модели местоположения из заданных массивов заголовков, широты и долготы

    func getLocations() -> [Location] {

            var locations = [Location]()
            for (index, value) in jobNameST.enumerated() {
                let location = Location(title: value, latitude: jobLatitudeST[index], longitude: jobLongitudeST[index])
                locations.append(location)
            }
            return locations
   }
...