是否可以仅根据物理地址为地图套件添加引脚

时间:2014-07-07 12:13:34

标签: ios objective-c mkmapview

是否可以仅根据物理地址为地图套件添加引脚,或者是否有办法根据物理地址获取long和lat

1 个答案:

答案 0 :(得分:0)

是的,你可以从地址获得lat。 请参考以下答案:iOS - MKMapView place annotation by using address instead of lat / long

基本上它是这样做的:

NSString *location = @"some address, state, and zip";
CLGeocoder *geocoder = [[CLGeocoder alloc] init];
            [geocoder geocodeAddressString:location 
                 completionHandler:^(NSArray* placemarks, NSError* error){
                     if (placemarks && placemarks.count > 0) {
                         CLPlacemark *topResult = [placemarks objectAtIndex:0];
                         MKPlacemark *placemark = [[MKPlacemark alloc] initWithPlacemark:topResult];

                         MKCoordinateRegion region = self.mapView.region;
                         region.center = placemark.region.center;
                         region.span.longitudeDelta /= 8.0;
                         region.span.latitudeDelta /= 8.0;

                         [self.mapView setRegion:region animated:YES];
                         [self.mapView addAnnotation:placemark];
                     }
                 }
             ];