2010-11-09 8 views
8

J'ai converti une longitude et une latitude sur ma MapView en un MKMapPoint. Je veux ensuite déplacer un imageView à ce point en utilisant la propriété center imageViews. Il semble que j'ai besoin de convertir le MKMapPoint en un CGPoint afin que je puisse changer le centre, mais les chiffres semblent être loin. Voici ce que j'utilise:iPhone SDK: Convertir MKMapPoint en CGPoint

// Convert to MKMapPoint 
    CLLocationCoordinate2D coord; 
    coord.latitude = [loc.latitude doubleValue]; 
    coord.longitude = [loc.longitude doubleValue]; 
    MKMapPoint point = MKMapPointForCoordinate(coord); 

    // Move our image 
    CGFloat newXPos = point.x; 
    CGFloat newYPos = point.y; 
    CGPoint newCenter = {newXPos, newYPos}; 
    self.movingMarker.center = newCenter; 

    //self.movingMarker.frame.origin.x = point.x; 
    //self.movingMarker.frame.origin.y = point.y; 

idées sur la façon de faire ma MKMapPoint une valeur pratique à utiliser pour la propriété centre de mon image?

Répondre

9

On dirait que MKMapView a une méthode pour ce faire:

CGPoint newCenter = [self.map convertCoordinate:coord toPointToView:self.map];