setRegion封装路由

我在我的(iOS7)应用程序中有一个mapView,您可以通过按下按钮获取从当前位置到固定目的地的路线。 该应用程序显示源和目标之间的折线。 问题是,如何缩放地图以显示整条线?

- (IBAction)handleRoutePressed:(id)sender { self.routeButton.enabled = NO; self.routeDetailsButton.enabled = NO; // Make a directions request MKDirectionsRequest *directionsRequest = [MKDirectionsRequest new]; // Start at our current location MKMapItem *source = [MKMapItem mapItemForCurrentLocation]; [directionsRequest setSource:source]; // Make the destination CLLocationCoordinate2D destinationCoords = CLLocationCoordinate2DMake(57.0496683, 9.9220121); MKPlacemark *destinationPlacemark = [[MKPlacemark alloc] initWithCoordinate:destinationCoords addressDictionary:nil]; MKMapItem *destination = [[MKMapItem alloc] initWithPlacemark:destinationPlacemark]; [directionsRequest setDestination:destination]; MKDirections *directions = [[MKDirections alloc] initWithRequest:directionsRequest]; [directions calculateDirectionsWithCompletionHandler:^(MKDirectionsResponse *response, NSError *error) { // We're done //self.activityIndicator.hidden = YES; //[self.activityIndicator stopAnimating]; self.routeButton.enabled = YES; // Now handle the result if (error) { NSLog(@"There was an error getting your directions"); return; } // So there wasn't an error - let's plot those routes self.routeDetailsButton.enabled = YES; //self.routeDetailsButton.hidden = NO; _currentRoute = [response.routes firstObject]; [self plotRouteOnMap:_currentRoute]; }]; } 

我试过了

 MKCoordinateRegion viewRegion = MKCoordinateRegionMakeWithDistance(destinationCoords, 150*METERS_PER_MILE, 150*METERS_PER_MILE); //#define METERS_PER_MILE 1609.344 [_mapView setRegion:viewRegion animated:YES]; 

但自然每次给我一个固定的观点。