2010-06-06 3 views
1

Je suis à la recherche d'une réponse sur la façon d'obtenir la latitude et la longitude de uimapkit. il y a le même problème qui a été répondu, mais il n'a pas donné la bonne coordonnée. http://yit.me/3ddp73Comment obtenir les coordonnées left-top et right-buttom de la latitude et de la longitude de la carte dans MapKit For iPad?

c'est le code du fil que je suis en train de lier ci-dessus.

CLLocationCoordinate2D topLeft, bottomRight; 
topLeft = [mapView convertPoint:CGPointMake(0,0) toCoordinateFromView:mapView]; 
CGPoint pointBottomRight = CGPointMake(mapView.frame.size.width, mapView.frame.size.height); 
bottomRight = [mapView convertPoint:pointBottomRight toCoordinateFromView:mapView]; 


NSLog(@"topleft = %f", topLeft); 
NSLog(@"bottom right = %f", bottomRight); 

une idée pour résoudre ce problème?

grâce

Répondre

0

La solution initiale est proche. Le système de coordonnées de la vue a l'origine en bas à gauche. Donc CGPoint (0,0) est en fait en bas à gauche, pas en haut. Et l'autre coordonnée sera en haut à droite.

2

La vue sur la carte a une propriété region.

MKCoordinateRegion region = mapView.region; 

contient la région du centre et de la durée 2D, de sorte

CLLocationCoordinate2D topLeft = CLLocationCoordinate2DMake(
    region.center.latitude - region.span.latitudeDelta/2, 
    region.center.longitude - region.span.longitudeDelta/2, 
); 

etc.

+0

Je suis désolé, mais il me donne "erreur: initialiseur invalide". pouvez-vous expliquer pourquoi vous utilisez CLLocationCoordinate2DMake Pas simple CGPoint? merci – damniatx

+0

@dam: Vous devez importer CoreLocation. – kennytm

+0

qui n'a pas résolu l'erreur. -_- – damniatx

Questions connexes