Подсчет количества пользовательских аннотаций, добавленных в mapView swift 4 - PullRequest
0 голосов
/ 09 ноября 2018

Я чувствую, что это нечто простое, что я просто смотрю. У меня есть карта, на которой пользователь нажимает кнопку, чтобы добавить аннотацию.

   func addPinToPath() {

    let catchPathPin = CatchAnnotation()

    let catchLat = map.userLocation.coordinate.latitude
    let catchLon = map.userLocation.coordinate.longitude

    catchPathPin.coordinate = CLLocationCoordinate2D(latitude: catchLat, longitude: catchLon)
    catchPathPin.title = "Fish On"
    catchPathPin.subtitle = "Path"
    catchPathPin.annoID = annoIDStart
    catchPathPin.pinImageName = "catch"

    let idToPass = catchPathPin.annoID

    annoIDCatch = idToPass!

    print(annoIDCatch)

    map.addAnnotation(catchPathPin)

    bitesInRoute = catchPathPin


}

На данный момент я хотел бы иметь счетчик, который показывает на дисплее, сколько добавленных аннотаций.

annotations.count даст мне счет всех аннотаций, но я хочу только счет CatchPathPin

1 Ответ

0 голосов
/ 09 ноября 2018

Есть два варианта.Вы можете иметь переменную count, которую вы увеличиваете каждый раз, когда вызывается addPinToPath.Другой вариант - отфильтровать текущие аннотации и получить отсчет.

count = map.annotations
    .filter { $0 is CatchAnnotation }
    .count
...