iOS Annotations

How to add tag to annotations so that I can uniquely identify each annotations

Hi.

You can check our “Search along a route” tutorial. It shows (step by step) how to create multiple annotations with custom view and uniquely identify them. Please find a full source code here: https://github.com/tomtom-international/tomtom-use-case-search-along-a-route-ios.

Regards,
Mateusz

Looking for solution in swift
Here is my usecase :
I got 10 places which am showing on map using Annotations. Now on click on any annotation, new view is displayed on the screen
I tried using AnnotationTag property but Error : says its read only property we cant assign any value

I’ve prepared small piece of code. I hope it’ll be helpful.

import UIKit
import TomTomOnlineSDKMaps

class CustomAnnotation : TTAnnotation {
    var uniqueDescription: String!
}
class ViewController: UIViewController, TTMapViewDelegate, TTAnnotationDelegate {
    @IBOutlet weak var mapView: TTMapView!
    var clickCounter: Int!
    override func viewDidLoad() {
        super.viewDidLoad()
        clickCounter = 1
        self.mapView.onMapReadyCompletion {
            self.mapView.delegate = self
            self.mapView.annotationManager.delegate = self
        }
    }

    func mapView(_ mapView: TTMapView, didLongPress clickedCoordinate: CLLocationCoordinate2D) {
        let annotation = CustomAnnotation(coordinate: clickedCoordinate)
        annotation.uniqueDescription = "myUniqueDescription\(String(clickCounter))"
        clickCounter += 1
        annotation.selectable = true
        mapView.annotationManager.add(annotation)
    }

    func annotationManager(_ manager: TTAnnotationManager, annotationSelected annotation: TTAnnotation) {
        print((annotation as! CustomAnnotation).uniqueDescription!)
    }
}

Let me know if the above solution is acceptable for you.

Regards,
Mateusz