que muestra la ubicación actual, junto con otra ubicación en iPhone

votos
2

cada vez que cargamos un MapView, que automaticallay muestra la ubicación actual del usuario correcto. En mi caso yo estoy mostrando otra ubicación en el mapa, de manera que el mapa se carga la ubicación actual y el zoom a la ubicación que he dado .. pero, el punto de ubicación actual no estaba mostrando (el azul que viene automaticay ..). i he dado mapView.showCurrentLocation = TRUE; pero no mostrando. por lo que pude cualquiera cuenta la forma en que funciona y que debería decir la marca de ubicación actual y luego el zoom hasta el punto de que he dado. Gracias

- (MKAnnotationView *)mapView:(MKMapView *)mapView viewForAnnotation:(id <MKAnnotation>)annotation {
    static NSString *defaultPinID = @CameraAnnotation;
    MKPinAnnotationView *retval = nil;
    static int postag=1;

    (MKPinAnnotationView *)[mapView dequeueReusableAnnotationViewWithIdentifier:defaultPinID];
    if(annotation=MapView.userLocation)
    {
        return nil;
    }
    // If we have to, create a new view
    else    if (retval == nil)
    {
        retval = [[[MKPinAnnotationView alloc] initWithAnnotation:annotation reuseIdentifier:defaultPinID] autorelease];

        UIButton *myDetailButton = [UIButton buttonWithType:UIButtonTypeDetailDisclosure];
        myDetailButton.frame = CGRectMake(0, 0, 50, 23);
        myDetailButton.contentVerticalAlignment = UIControlContentVerticalAlignmentCenter;
        myDetailButton.contentHorizontalAlignment = UIControlContentHorizontalAlignmentCenter;
        myDetailButton.tag=postag;
        postag++;
        [myDetailButton addTarget:self action:@selector(showLinks:) forControlEvents:UIControlEventTouchUpInside];
        retval.rightCalloutAccessoryView = myDetailButton;
        [retval setPinColor:MKPinAnnotationColorRed];
        retval.animatesDrop = YES;
        retval.canShowCallout = YES;
    }

    return retval;
}
Publicado el 07/05/2010 a las 09:54
fuente por usuario
En otros idiomas...                            


2 respuestas

votos
2

En el simulador de la ubicación actual por defecto es Cupertino.This es lo que está viendo, que funcionará correctamente en el dispositivo.

Más encima se debe utilizar CLLocationManager para obtener la ubicación actual.

- (void)applicationDidFinishLaunching:(UIApplication *)application { 
{
self.locationManager = [[[CLLocationManager alloc] init] autorelease];
self.locationManager.delegate = self; // Tells the location manager to send updates to this object
[locationManager startUpdatingLocation];
}

Para cambiar el color de pin

MKPinAnnotationView   *pin=[[[MKPinAnnotationView alloc] initWithAnnotation:annotation reuseIdentifier:@"pin"]autorelease];

[pin setPinColor:MKPinAnnotationColorRed];

Todo lo mejor.

Respondida el 07/05/2010 a las 10:03
fuente por usuario

votos
1

echar un vistazo a la respuesta a esta cuestión para establecer el nivel de zoom MKMapView para abarcar todos los MKAnnotations que se le atribuye

Respondida el 07/05/2010 a las 12:38
fuente por usuario

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