Cargando vista de llamada de accesorio para mkannotationview

votos
1

Tengo una vista de anotación de mapa que contiene un botón de llamada a la derecha que carga una vista de accesorio que es una clase UIViewController. Estoy usando anotaciones de valor razonable, pero me pregunto cómo puedo pasar información actualizada a mi clase UIViewController. Digamos que tengo 2 valores de cadena que se asignan a 2 UILabels en mi opinión. ¿Cómo puedo actualizar esos valores después de que la vista de accesorios inicial ya se haya cargado en la memoria como una vista reutilizable?

Cualquier ayuda sería apreciada.

Publicado el 02/09/2009 a las 08:26
fuente por usuario
En otros idiomas...                            


3 respuestas

votos
0

Trate de usar el método MKMapViewDelegate:

-(void)mapView:(MKMapView *)mapView annotationView:(MKAnnotationView *)view calloutAccessoryControlTapped:(UIControl *)control;

Este método se llama cuando un usuario tocó uno de los botones del accesorio de la vista de anotación. Suponiendo que su MKMapViewDelegate es también el UIViewController que pueden acceder a la vista accesorio.

Respondida el 21/04/2010 a las 07:29
fuente por usuario

votos
0

En la subclase de anotación que necesita para reemplazar el método setTitle para enviar los cambios a la instancia de la clase UIViewController que su subclase está llevando a cabo. O bien, puede configurar su subclase de anotación para recibir notificaciones (de NSNotificationCenter), y al recibir una notificación, actualizar el título y la instancia de la clase UIViewController.

Si no está familiarizado con NSNotifications, entonces aquí es una referencia rápida. He utilizado estos para mantener mis anotaciones actualizadas. Ejemplo NSNotification

Respondida el 11/03/2010 a las 19:06
fuente por usuario

votos
0

Deberá mantener una referencia a UILabels en el objeto que obtiene la actualización, y luego usar setTitle: (Creo) para actualizar las etiquetas.

Respondida el 31/12/2009 a las 02:59
fuente por usuario

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more