首页 > 其他 > 详细

根据经纬度获取地名,根据地名获取经纬度

时间:2015-08-04 17:15:53      阅读:298      评论:0      收藏:0      [点我收藏+]
1. 根据经纬度获取地名

[objc] view plaincopy在CODE上查看代码片派生到我的代码片
CLGeocoder *clGeoCoder = [[CLGeocoder alloc] init];  
[clGeoCoder reverseGeocodeLocation:newLocation completionHandler: ^(NSArray *placemarks,NSError *error) {  
     for (CLPlacemark *placeMark in placemarks)  
     {  
         NSDictionary *addressDic=placeMark.addressDictionary;  

         NSString *state=[addressDic objectForKey:@"State"];  
         NSString *city=[addressDic objectForKey:@"City"];  
         NSString *subLocality=[addressDic objectForKey:@"SubLocality"];  
         NSString *street=[addressDic objectForKey:@"Street"];  

         [self stopLocation];  
         [_chooseCityBtn setTitle:city forState:UIControlStateNormal];  
         [_activityIndicator stopAnimating];  
     }  

 }];  
2. 根据地名获取经纬度
[objc] view plaincopy在CODE上查看代码片派生到我的代码片
***

//这个地址根据你的需求上传
--------------

***
NSString *oreillyAddress = @"1005 Gravenstein Highway North, Sebastopol, CA 95472, USA";  
CLGeocoder *myGeocoder = [[CLGeocoder alloc] init];  
[myGeocoder geocodeAddressString:oreillyAddress completionHandler:^(NSArray *placemarks, NSError *error) {  
    if ([placemarks count] > 0 && error == nil) {  
        NSLog(@"Found %lu placemark(s).", (unsigned long)[placemarks count]);  
        CLPlacemark *firstPlacemark = [placemarks objectAtIndex:0];  
        NSLog(@"Longitude = %f", firstPlacemark.location.coordinate.longitude);  
        NSLog(@"Latitude = %f", firstPlacemark.location.coordinate.latitude);  
    }  
    else if ([placemarks count] == 0 && error == nil) {  
        NSLog(@"Found no placemarks.");  
    } else if (error != nil) {  
        NSLog(@"An error occurred = %@", error);  
    }  
}];  

版权声明:本文为博主原创文章,未经博主允许不得转载。

根据经纬度获取地名,根据地名获取经纬度

原文:http://blog.csdn.net/tubiebutu/article/details/47278651

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!