Nido Apple

Recibe ayuda de expertos

Registrate y pregunta

Es gratis y fácil

Recibe respuestas

Respuestas, votos y comentarios

Vota y selecciona respuestas

Recibe puntos, vota y da la solución

Pregunta

0voto

Poner valor variable en una chincheta, MKPointAnnotation

Hola, tengo un contador que es num y en la chincheta quiero que salga el valor num en la informacion, cada vez que actualizo tiene que sumar uno y en la nota de la chincheta pintar el valor de num,

        MKPointAnnotation *pin1 = [[MKPointAnnotation alloc] init];
        localizacion1.latitude= lati;
        localizacion1.longitude= longi;
        pin1.coordinate = localizacion1;
        pin1.title = @"Patum";
        pin1.subtitle = @"Ultima Posició primera %i",num; // aquí me pinta el string tal qual y me gustaria que saliera el valor de num.

        [mapView addAnnotation:pin1];
        [self->mapView addAnnotation:pin1];
        [self.mapView selectAnnotation:pin1 animated:FALSE];
        num = num+1;

18 Respuestas

0voto

Peter Puntos274450
Las imágenes que subes son muy pequeñas y cuesta verlas, pero en un label transparente encima de la chincheta te queda :)

0voto

markfree Puntos4500
Entiendo que en un label transparente encima la chincheta no se puede? si se puede como?

0voto

Peter Puntos274450
Pásame tu código para verlo armado y probar un poco. En teoría solo tienes que ponerlo y ya. Saludos.

0voto

markfree Puntos4500

El codigo funciona bien el contador va aumentado , el problema es concatenar dentro del string del pin.subtitle, el valor de count.

MKPointAnnotation *pin1 = [[MKPointAnnotation alloc] init];
        localizacion1.latitude= lati;
        localizacion1.longitude= longi;
        pin1.coordinate = localizacion1;
        pin1.title = @"Patum";

        pin1.subtitle =  @"Ultima Posició primera %@ ",num";

0voto

markfree Puntos4500

En la siguiente función actualizo una chincheta, como veis tengo una variable que empieza por 0 y va augmentado cada vez que activan esta función.

La pregunta es como lo hago para que en la info de la chincheta salga concatenado el valor de num?

num = 0;
-(IBAction)ActualizarPos:(id)sender{

    NSURL *URL =[NSURL URLWithString:@"http://midominio/consulta1.php"];
    NSData *datos = [[NSData alloc]initWithContentsOfURL:URL];

    NSError *error = nil;

    NSString *datos_string = [[NSString alloc]initWithData:datos encoding:NSUTF8StringEncoding];

    [datos release];

    SBJsonParser *parser = [[SBJsonParser alloc]init];

    NSArray *datos_array = [[NSArray alloc]initWithArray:[parser objectWithString:datos_string error:error]];

    for (NSDictionary *items  in datos_array) {

        lati = [[items objectForKey:@"x"] floatValue] ;
        longi = [[items objectForKey:@"y"] floatValue] ;

    }
    if (num ==0) {

        NSLog(@"botoactfora%flong%f",lati,longi);
        //Usamos los datos pasados para crear la localizacion

        localizacion.latitude = lat;
        localizacion.longitude = lng;

        //Zoom
        MKCoordinateSpan span;
        span.latitudeDelta=0.01;
        span.longitudeDelta=0.01;

        //Centro del mapa en las coordenadas pasadas
        MKCoordinateRegion region;
        region.span=span;
        region.center = localizacion;

        //Pasamos datos al mapa
        [mapView setRegion:region animated:YES];

        //Añadimos pin
        MKPointAnnotation *pin = [[MKPointAnnotation alloc] init];
        pin.coordinate = localizacion;
        pin.title = title;
        pin.subtitle = subTitle;
        [mapView addAnnotation:pin];
        [self->mapView addAnnotation:pin];
        [self.mapView selectAnnotation:pin animated:FALSE];

        MKPointAnnotation *pin1 = [[MKPointAnnotation alloc] init];
        localizacion1.latitude= lati;
        localizacion1.longitude= longi;
        pin1.coordinate = localizacion1;
        pin1.title = @"Patum";
        pin1.subtitle = @"Ultima Posició ";

        [mapView addAnnotation:pin1];
        [self->mapView addAnnotation:pin1];
        [self.mapView selectAnnotation:pin1 animated:FALSE];
        num = num+1;
    }
    else if (num >=1) {

    NSLog(@"botoactdins%flong%f",lati,longi);
    //Usamos los datos pasados para crear la localizacion

    localizacion.latitude = lat;
    localizacion.longitude = lng;

    //Zoom
    MKCoordinateSpan span;
    span.latitudeDelta=0.01;
    span.longitudeDelta=0.01;

    //Centro del mapa en las coordenadas pasadas
    MKCoordinateRegion region;
    region.span=span;
    region.center = localizacion;

    //Pasamos datos al mapa
    [mapView setRegion:region animated:YES];

    //Añadimos pin
    MKPointAnnotation *pin = [[MKPointAnnotation alloc] init];
    pin.coordinate = localizacion;
    pin.title = title;
    pin.subtitle = subTitle;
    [mapView addAnnotation:pin];
    [self->mapView addAnnotation:pin];
    [self.mapView selectAnnotation:pin animated:FALSE];

    MKPointAnnotation *pin1 = [[MKPointAnnotation alloc] init];
    localizacion1.latitude= lati;
    localizacion1.longitude= longi;
    pin1.coordinate = localizacion1;
    pin1.title = @"Patum";
    <u><b><i>pin1.subtitle = @"Ultima Posició numero: %@",num; // aquí es donde quiero que salga el valor</i></b></u>

    [mapView addAnnotation:pin1];
    [self->mapView addAnnotation:pin1];
    [self.mapView selectAnnotation:pin1 animated:FALSE];
        num = num+1;
    }

0voto

Peter Puntos274450
Me parece esto te puede ayudar y es lo que estas buscando. Prueba y me dices.

0voto

markfree Puntos4500

Lo he conseguido, la respuesta es:

 pin1.subtitle = [NSString stringWithFormat:@"Ultima Posició %i",num];

0voto

Peter Puntos274450
image image image image !! Que bueno que te ayudó y quedó funcionando ! Saludos.

Por favor, accede o regístrate para responder a esta pregunta.

¿Conoces alguien que puede responder?
¡Comparte esta pregunta!


...