Я создаю приложение, в которое я добавлю несколько аннотаций на карту. В качестве первого теста я попробовал
let anotacao = MKPointAnnotation()
anotacao.coordinate.latitude = -23.623558
anotacao.coordinate.longitude = -46.581787
anotacao.title = "Annotation 1 Title"
anotacao.subtitle = "Annotation 1 Subtitle"
self.mapa.addAnnotation(anotacao)
anotacao.coordinate.latitude = -23.623658
anotacao.coordinate.longitude = -46.582787
anotacao.title = "Annotation 2 Title"
anotacao.subtitle = "Annotation 2 Subtitle"
self.mapa.addAnnotation(anotacao)
anotacao.coordinate.latitude = -23.623258
anotacao.coordinate.longitude = -46.591787
anotacao.title = "Annotation 3 Title"
anotacao.subtitle = "Annotation 3 Subtitle"
self.mapa.addAnnotation(anotacao)
Мой ожидаемый результат - увидеть 3 аннотации на карте, но у меня была только последняя. Я также попытался добавить эти строки кодов в
Timer.scheduledTimer(withTimeInterval: 8, repeats: true) { (timer) in
if index == 1 {
anotacao.coordinate.latitude = -23.623558
anotacao.coordinate.longitude = -46.581787
anotacao.title = "Annotation 1 Title"
anotacao.subtitle = "Annotation 1 Subtitle"
self.mapa.addAnnotation(anotacao)
index += 1
} else if index == 2 {
anotacao.coordinate.latitude = -23.623658
anotacao.coordinate.longitude = -46.582787
anotacao.title = "Annotation 2 Title"
anotacao.subtitle = "Annotation 2 Subtitle"
self.mapa.addAnnotation(anotacao)
index += 1
} else if index == 3 {
anotacao.coordinate.latitude = -23.623258
anotacao.coordinate.longitude = -46.591787
anotacao.title = "Annotation 3 Title"
anotacao.subtitle = "Annotation 3 Subtitle"
self.mapa.addAnnotation(anotacao)
}
Даже если это не «пригодно для использования» в реальном проекте, приведенный выше код показывает 3 аннотации на карте.
Поиск в Stackoverflow Iнашел другой способ сделать это, используя addAnnotations, который делает именно то, что мне нужно . MapKit в Swift, часть 3 - MKPointAnnotation, addAnnotations Мой окончательный код выглядит в точности так, как предлагается в этой теме.
Поскольку я очень новичок в программировании Swift, моя основная мысль в этом постепопытаться понять, почему первый код не сработал. Чего мне не хватает в addAnnotation?
Я использую Xcode 11.2, Swift4, IOS13 и macOS Catalina