¿Qué reemplaza a MGLAnnotationView en la versión 10 de Mapbox?
En nuestra aplicación, utilizamos en gran medida MGLAnnotationViews debido a su flexibilidad.
Podemos animar anotaciones en el mapa con una MGLAnnotationView.
Por ejemplo, un efecto pulsante en una anotación es algo que es fundamental para nuestra aplicación.
Anteriormente en la versión 6, logramos nuestro efecto pulsante de la siguiente manera:
class CustomAnnotationView: MGLAnnotationView {
let pointFeature: MGLPointFeature
let reuseId: String
let customPulse = CustomPulseLayer() // CAReplicatorLayer
init(pointFeature: MGLPointFeature, showPulse: Bool) {
self.pointFeature = pointFeature
self.reuseId = self.identifier(forFeature: pointFeature)
super.init(annotation: pointFeature, reuseIdentifier: self.reuseId)
self.frame = CGRect(x: 0, y: 0, width: 24, height: 24)
self.layer.cornerRadius = bounds.width / 2
self.backgroundColor = .systemBlue
self.addSubview(pointImageView)
if showPulse {
layer.addSublayer(customPulse)
customPulse.start()
}
}
private lazy var pointImageView: UIImageView = {
let imageView = UIImageView(frame: self.frame)
let image = self.imageBasedOnIdentifier(self.reuseId)
imageView.image = image
return imageView
}()
}
¿Alguien sabría cómo lograr lo mismo en la versión 10 de Mapbox?
davy.ai
En la versión 10, podemos lograr el mismo efecto de pulsación mediante: