Chargement Accessoire vue pour mkannotationview callout

voix
1

J'ai une vue d'annotation de carte qui contient un bouton rightcallout qui charge une vue accessoire qui est une classe UIViewController. J'utilise des annotations resuable, mais me demande comment je peux transmettre des informations mises à jour à ma classe UIViewController. Disons que j'ai 2 valeurs de chaîne qui cartographient 2 UILabels sur moi. Comment puis-je mettre à jour ces valeurs après le point de vue initial accessoire a déjà été chargé dans la mémoire comme une vue resusable?

Toute aide serait appréciée.

Créé 02/09/2009 à 08:26
source utilisateur
Dans d'autres langues...                            


3 réponses

voix
0

Essayez d'utiliser la méthode MKMapViewDelegate:

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

Cette méthode est appelée lorsqu'un utilisateur tapé l'un des boutons accessoires de la vue d'annotation. Si l'on suppose que votre MKMapViewDelegate est aussi le UIViewController qui peut accéder à votre point de vue accessoire.

Créé 21/04/2010 à 07:29
source utilisateur

voix
0

Dans votre sous-classe d'annotation vous devez remplacer la méthode de setTitle pour envoyer les modifications à l'instance de votre classe UIViewController que votre sous-classe tient. Ou bien, vous pouvez configurer votre sous-classe d'annotation pour recevoir des notifications (de NSNotificationCenter), et lors de la réception d'une notification, mettre à jour le titre et l'instance de votre classe UIViewController.

Si vous n'êtes pas familier avec NSNotifications, alors voici une référence rapide. J'ai utilisé ces annotations pour garder mes mises à jour. Exemple NSNotification

Créé 11/03/2010 à 19:06
source utilisateur

voix
0

Vous aurez besoin de maintenir une référence aux UILabels dans l'objet qui obtient la mise à jour, puis utilisez setTitle: (je pense) de mettre à jour les étiquettes.

Créé 31/12/2009 à 02:59
source utilisateur

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