MKMapView에 추가하고 싶은 주석이 여러 개 있습니다 (0-n 개 항목, 여기서 n은 일반적으로 약 5 임). 주석을 잘 추가 할 수 있지만 한 번에 모든 주석에 맞게지도 크기를 조정하고 싶습니다. 어떻게해야할지 모르겠습니다.
보고 -regionThatFits:
있었지만 어떻게해야할지 잘 모르겠습니다. 지금까지 가지고있는 것을 보여주는 코드를 게시하겠습니다. 나는 이것이 일반적으로 간단한 작업이라고 생각하지만 지금까지 MapKit에 약간 압도당했습니다.
- (void)locationManager:(CLLocationManager *)manager didUpdateToLocation:(CLLocation *)newLocation fromLocation:(CLLocation *)oldLocation{
location = newLocation.coordinate;
//One location is obtained.. just zoom to that location
MKCoordinateRegion region;
region.center = location;
//Set Zoom level using Span
MKCoordinateSpan span;
span.latitudeDelta = 0.015;
span.longitudeDelta = 0.015;
region.span = span;
// Set the region here... but I want this to be a dynamic size
// Obviously this should be set after I've added my annotations
[mapView setRegion:region animated:YES];
// Test data, using these as annotations for now
NSArray *arr = [NSArray arrayWithObjects:@"one", @"two", @"three", @"four", nil];
float ex = 0.01;
for (NSString *s in arr) {
JBAnnotation *placemark = [[JBAnnotation alloc] initWithLat:(location.latitude + ex) lon:location.longitude];
[mapView addAnnotation:placemark];
ex = ex + 0.005;
}
// What do I do here?
[mapView setRegion:[mapView regionThatFits:region] animated:YES];
}
내가 위치 업데이트를 받으면이 모든 일이 발생합니다.이 작업을 수행하기에 적절한 장소인지 모르겠습니다. 그렇지 않다면 더 좋은 곳은 어디입니까? -viewDidLoad
?
미리 감사드립니다.