Pentru a configura o interogare la un server extern Vreau să obțineți limitele Vizualizarea curentă a hărții într-o aplicație pentru iPhone Construiesc. UIView ar trebui să răspundă la limite, dar se pare că MKMapView nu. După setarea unei regiuni și zoom pe harta am să încercați să obțineți limitele. Sunt blocat pe primul pas, care este de a încerca să obțineți CGPoints care reprezintă SE și NV colțuri ale hărții. După aceea am fost de gând să utilizeze:
- (CLLocationCoordinate2D)convertPoint:(CGPoint)point toCoordinateFromView:(UIView *)view
Pentru a transforma punctele în coordonatele de pe hartă. Dar eu nu pot ajunge atât de departe ...
//Recenter and zoom map in on search location
MKCoordinateRegion region = {{0.0f, 0.0f}, {0.0f, 0.0f}};
region.center = mySearchLocation.searchLocation.coordinate;
region.span.longitudeDelta = 0.01f;
region.span.latitudeDelta = 0.01f;
[self.mapView setRegion:region animated:YES];
//After the new search location has been added to the map, and the map zoomed, we need to update the search bounds
//First we need to calculate the corners of the map
CGPoint se = CGPointMake(self.mapView.bounds.origin.x, mapView.bounds.origin.y);
CGPoint nw = CGPointMake((self.mapView.bounds.origin.x + mapView.bounds.size.width), (mapView.bounds.origin.y + mapView.bounds.size.height));
NSLog(@points are: se %@, nw %@, se, nw);
Codul compilează fără avertismente, dar se și nw sunt ambele nule. Privind la self.mapView.bounds.origin.x variabila este 0. Încercarea de a NSLog direct self.mapView.bounds.size.width îmi dă „semnal Programul primit:«un EXC_BAD_ACCESS».“ care pare să vină de la NSLog.
Oricine cunoaște modul corect de a obține colț și nord-vest colțul de sud-est (în coordonatele de pe hartă), din zona vizibilă a unei MKMapView?
EDIT: Se pare că ori de câte ori ți-a cerut ceva aici răspunsul vine la tine imediat după. Am fost folosind% @ în loc de @f pentru a imprima fiecare variabilă în NSLog care a fost aruncat erori acolo. Am descoperit, de asemenea, proprietatea annotationVisibleRect de MKMapview. Se pare însă că annotationVisibleRect se bazează pe vizualizarea mamă coordonate.














