iphone - Cómo seleccionar un pin de mapa programáticamente
ios objective-c (2)
Al igual que la respuesta del Objetivo C, en su vista de tabla tiene una lista de anotaciones. En Swift en la didSelectRow
:
Para Swift 4:
// annotations would be the array of annotations - change to your required data sets name
let selectedAnnotation = annotations[indexPath.row]
self.mapView.selectAnnotation(selectedAnnotation, animated: true)
Corto y sencillo.
Soy nuevo en Maps Concept.
Por favor, encuentre la imagen adjunta una vez.
cuando hago clic en el "pin", aparece un mensaje que dice "Admire su sonrisa" o cualquier texto ... Ahora quiero "Me gusta" ... cuando seleccionamos la vista de tabla, debo elevar ese mensaje para ese pin (con fuera de la interacción del usuario para ese pin) ...
Estoy usando el código de abajo para estos mapas y pines.
-(void) viewWillAppear:(BOOL)animated
{
[super viewWillAppear:YES];
customLocation.latitude=[casesobjc.latitude_string doubleValue];
customLocation.longitude=[casesobjc.longitude_string doubleValue];
MapViewAnnotation *newAnnotation = [[MapViewAnnotation alloc] initWithTitle:casesobjc.locationForMap_string andCoordinate:customLocation];
[mapView addAnnotation:newAnnotation];
}
- (MKAnnotationView *) mapView: (MKMapView *) mapView viewForAnnotation: (id<MKAnnotation>) annotation {
MKPinAnnotationView *pin = (MKPinAnnotationView *) [mapView dequeueReusableAnnotationViewWithIdentifier: @"annotation_ID"];
if (pin == nil) {
pin = [[MKPinAnnotationView alloc] initWithAnnotation: annotation reuseIdentifier: @"annotation_ID"];
} else {
pin.annotation = annotation;
}
pin.pinColor = MKPinAnnotationColorPurple;
pin.animatesDrop = YES;
pin.canShowCallout=YES;
return pin;
}
Ahora voy a mostrar todos los pines una vez como abajo.
¿Cómo hacerlo? Cuando hacemos clic en la vista de tabla, necesito mostrar el título de ese pin, ¿cómo lo mostramos cuando seleccionamos un pin?
Gracias por adelantado
El método que está buscando es selectAnnotation:.
En su didSelectRowAtIndexPath
, debe encontrar la anotación asociada con la fila de la tabla.
Una vez que lo encuentre, puede indicarlo, para seleccionarlo usando:
[mapView selectAnnotation:foundAnnotation animated:YES];