Pergunta

Quero adicionar mais detalhes no MKAnnotation, como título do local, descrição, data, nome do local.Portanto, serão necessárias quatro linhas.Mas descobri que apenas 2 parâmetros podem ser passados ​​para o MKAnnotation, que são título e subtítulo.Como posso adicionar mais detalhes no mapa?Plz me ajude.. Obrigado antecipadamente.

Foi útil?

Solução

Dê uma olhada em como criar um personalizado MKAnnotationView objeto...é basicamente um UIView que é adaptado para anotações de mapa.Nesse objeto você poderia ter seus 4 rótulos personalizados.

Na tua MKMapViewDelegate classe, você implementa o viewForAnnotation método:

- (CustomMapAnnotationView *)mapView:(MKMapView *)mapView viewForAnnotation:(id <MKAnnotation>)annotation
{
    CustomMapAnnotationView *annotationView = nil;

    // determine the type of annotation, and produce the correct type of annotation view for it.
    CustomMapAnnotation* myAnnotation = (CustomMapAnnotation *)annotation;

    NSString* identifier = @"CustomMapAnnotation";
    CustomMapAnnotationView *newAnnotationView = (CustomMapAnnotationView *)[self.mapView dequeueReusableAnnotationViewWithIdentifier:identifier];

    if(nil == newAnnotationView) {
        newAnnotationView = [[[CustomMapAnnotationView alloc] initWithAnnotation:myAnnotation reuseIdentifier:identifier] autorelease];
    }

    annotationView = newAnnotationView;
    [annotationView setEnabled:YES];
    [annotationView setCanShowCallout:YES];

    return annotationView;
}

E isso exibirá sua visualização personalizada onde quer que você tenha uma anotação...se você quiser um tutorial passo a passo, confira este vídeo.

espero que isto ajude

EDITAR

Na verdade, acabei de encontrar um novo Exemplo de mapas no site de desenvolvimento da Apple...tem todo o código-fonte que você precisa ler.Eles também estão usando um costume MKAnnotationView chamado WeatherAnnotationView

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top