MKMapView kullanıyorum ve haritaya 5-10 kilometrelik bir alan hakkında bir dizi ek açıklama pimi ekledim. Uygulamayı çalıştırdığımda, haritam tüm dünyayı göstermek için uzaklaştırılmaya başlar, iğneler görüntüye sığacak şekilde haritayı yakınlaştırmanın en iyi yolu nedir?
EDIT: Benim ilk düşüncem MKCoordinateRegionMake kullanmak ve ek açıklamalarımdan koordinat merkezi, boylamDelta ve latitudeDelta hesaplamak olacaktır. Bunun işe yarayacağından eminim, ama sadece belirgin bir şey eksik olmadığımı kontrol etmek istedim.
Kod eklendi, BTW: FGLocation uygun bir sınıf MKAnnotation
, locationFake NSMutableArray
bu nesnelerden biridir. Yorumlar her zaman beklerim ....
- (MKCoordinateRegion)regionFromLocations {
CLLocationCoordinate2D upper = [[locationFake objectAtIndex:0] coordinate];
CLLocationCoordinate2D lower = [[locationFake objectAtIndex:0] coordinate];
// FIND LIMITS
for(FGLocation *eachLocation in locationFake) {
if([eachLocation coordinate].latitude > upper.latitude) upper.latitude = [eachLocation coordinate].latitude;
if([eachLocation coordinate].latitude < lower.latitude) lower.latitude = [eachLocation coordinate].latitude;
if([eachLocation coordinate].longitude > upper.longitude) upper.longitude = [eachLocation coordinate].longitude;
if([eachLocation coordinate].longitude < lower.longitude) lower.longitude = [eachLocation coordinate].longitude;
}
// FIND REGION
MKCoordinateSpan locationSpan;
locationSpan.latitudeDelta = upper.latitude - lower.latitude;
locationSpan.longitudeDelta = upper.longitude - lower.longitude;
CLLocationCoordinate2D locationCenter;
locationCenter.latitude = (upper.latitude + lower.latitude) / 2;
locationCenter.longitude = (upper.longitude + lower.longitude) / 2;
MKCoordinateRegion region = MKCoordinateRegionMake(locationCenter, locationSpan);
return region;
}