iPhone: addAnnotation niet toen aangeroepen vanuit een andere weergave

stemmen
0

Ik heb twee uitzicht, het eerste zicht heeft een MKMapView op het genoemd ridesMap. De tweede uitzicht is gewoon een weergave met een UITableView erin. Wanneer u op de knop op te slaan in de tweede opvatting, roept een methode uit het eerste zicht:

// Get my first views class
MyRidesMapViewController *rideMapView = [[MyRidesMapViewController alloc] init];
// Call the method from my first views class that removes an annotation
[rideMapView addAnno:newRidePlacemark.coordinate withTitle:rideTitle.text withSubTitle:address];

Dit vraagt ​​juist de addAnno methode, die net eruit ziet:

- (void)addAnno:(CLLocationCoordinate2D)anno withTitle:(NSString *)annoTitle withSubTitle:(NSString *)subTitle {

    Annotation *ano = [[[Annotation alloc] init] autorelease];

    ano.coordinate = anno;

    ano.title = annoTitle;

    ano.subtitle = subTitle;

    if ([ano conformsToProtocol:@protocol(MKAnnotation)]) {

        NSLog(@YES IT DOES!!!);

    }

    [ridesMap addAnnotation:ano];

}//end addAnno

Deze methode zorgt voor een annotatie die wel voldoen aan MKAnnotation, en het veronderstellen dat annotatie toe te voegen aan de kaart met behulp van de addAnnotation methode. Maar, de aantekening nooit wordt toegevoegd.

Ik krijg nooit eventuele fouten wanneer de annotatie niet wordt toegevoegd. Maar het lijkt nooit wanneer de methode wordt aangeroepen.

Waarom zou dit zijn? Het lijkt erop dat ik alles goed heb gedaan, en dat ik het passeren van een correcte MKAnnotation de addAnnotation methode. Dus, krijg ik niet waarom het nooit een pin daalt? Zou het kunnen zijn omdat ik het aanroepen van deze methode vanuit een ander uitzicht? Waarom zou die kwestie?

De vraag is gesteld op 25/05/2010 om 06:20
bron van user
In andere talen...                            


1 antwoorden

stemmen
2

U maakt een tweede exemplaar van MyRidesMapViewController. Je moet het toevoegen van de annotatie naar de oorspronkelijke instantie. Je moet een middel van het passeren van die instantie naar uw tweede opvatting te bieden. Er zijn vele manieren om dit te doen; de optimale keuze is afhankelijk van hoe uw app is gestructureerd (wat we niet weten).

antwoordde op 25/05/2010 om 08:04
bron van user

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