定位- CLGeoencoder - 反编码

#import "ViewController.h"

#import "MBProgressHUD+MJ.h"

#import <CoreLocation/CoreLocation.h>

@interface ViewController ()

@property (nonatomic, strong) CLGeocoder *geocoder; // 编码对象

@property (weak, nonatomic) IBOutlet UILabel *detailLabel; // 详细地址

@property (weak, nonatomic) IBOutlet UITextField *latitudeField; // 纬度

@property (weak, nonatomic) IBOutlet UITextField *longitudeField; // 经度

@end

@implementation ViewController

/**

*  反地理编码

*

*/

- (IBAction)encoderBtn:(id)sender

{

// 1. 获取用户输入的经纬度

NSString *longitude = self.longitudeField.text;

NSString *latitude = self.latitudeField.text;

if (longitude.length == 0 || longitude == nil || latitude.length == 0 || latitude == nil) {

[MBProgressHUD showError:@"请输入经纬度" toView:self.view];

return;

}

// 2. 创建CLLocation对象

CLLocation *location = [[CLLocation alloc] initWithLatitude:[latitude doubleValue] longitude:[longitude doubleValue]];

// 3. 反编码 - 输出地标信息

/**

*  反编码

*

*  @param CLLocation - 有经度纬度等信息

*/

[self.geocoder reverseGeocodeLocation:location completionHandler:^(NSArray *placemarks, NSError *error) {

for (CLPlacemark *placemark in placemarks) {

LogRed(@"%@  -- %@ --- %f --- %f",placemark.name, placemark.addressDictionary, placemark.location.coordinate.longitude, placemark.location.coordinate.latitude);

NSMutableString *mutstr = [NSMutableString string];

for (NSString *subStr in placemark.addressDictionary[@"FormattedAddressLines"]) {

[mutstr appendString:subStr];

}

LogGreen(@"%@",mutstr);

}

}];

}

- (void)viewDidLoad {

[super viewDidLoad];

//

}

/**

*  懒加载

*/

- (CLGeocoder *)geocoder{

if (!_geocoder) {

_geocoder = [[CLGeocoder alloc] init];

}

return _geocoder;

}

时间: 2024-10-24 06:39:20

定位- CLGeoencoder - 反编码的相关文章

地图定位CoreLocation框架,地理位置编码与反编码

在现代互联网时代,越来越多的应用,都用到了地图定位功能,在iOS开发中,想要加入这种功能,必须基于两个框架进行开发: 1.Map Kit:用于显示地图, 2.CoreLocation:用于显示地理位置 这里我们简单了解一下CoreLocation,用于显示地理位置,坐标信息. 一.相关类介绍 CLLocationManager.用于定位服务管理类,它能够给我们提供位置信息和高度信息,也可以监控设备进入或离开某个区域,还可以获得设备的运行方向. CLLocation.封装了位置和高度信息. CLL

objective-c开发——地图定位之地理编码和地理反编码

我们平时做地图定位,主要是靠经纬度来准确定位某个位置. 但是,我们是人啊,我们不是卫星啊. 用户在地图上查一个地方,我们总不能告诉他,这个地方是东经多少度,北纬多少度吧. 咱们好歹得告诉人家个地名不是? 这就是我们今天说的地理编码和地理反编码. 地理编码:你说个地名,比如“西湖”,我们给你返回它的经纬度,然后你通过查出来的这个经纬度去定位 反地理编码:我告诉你一个经纬度,你通过经度纬度返回地名.最好在插个大头针在地图上就更好了,啥叫大头针,咱们以后再说. 首先,我的界面是这个样纸的,就是两个按钮

iOS定位服务与地图开发(2)---地理信息反编码

上节我们通过定位获取了经度和纬度数值,但是一般人很难看懂这些数字. 地理信息反编码:就是根据这些经纬数字返回地点的相关文字描述信息,这些文字描述信息被封装在CLPlacemark类中,我们称这个类为"地标"类. 地理信息反编码使用CLGeocoder类实现,这个类能够实现在地理坐标与地理文字描述信息之间的转换. CLGeocoder类中进行地理信息反编码的方法是:reverseGeocodeLocation: completionHandler: location:是要定位的地理位置对

iOS学习_地图_定位和编码与反编码

定位: 引入头文件  #import <CoreLocation/CoreLocation.h>声明管理器属性:@property(nonatomic,strong)CLLocationManager *manager;第一步:初始化管理器self.manager = [[CLLocationManager alloc] init];第二步:进行隐私的判断并授权 //进行隐私的判断 if (![CLLocationManager locationServicesEnabled]) { NSLo

位置与地图(一)定位获取位置及位置反编码

*我们的应用程序,可以通过添加Core Location框架所包含的类,获取设备的地图位置. *添加CoreLocation.framework框架,导入#import<CoreLocation/CoreLocation.h> *使用地图服务时,会消耗更多地设备电量.因此,在获取到设备的位置后,应该停止定位来节省电量 @跟往常一样,我们通过一个demo来展示内容与效果 // // HMTRootViewController.h // My-GPS-Map // // Created by la

ios地理信息反编码

通过定位我们可以获得经度和纬度,通过地理信息反编码可以通过地理坐标返回某个地点的相关文字描述.这些描述封装在CLPlacemark类中,它的属性为:1)addressDictionary,地理信息字典2)ISOcountryCode,ISO国家代号3)Country,国家信息4)postalCode,邮政编码5)adminisrativeArea,行政区域信息6)locality,指定城市信息个人认为,字典中存储的值 跟 CLPlacemark中其它的属性的值是相同的. 地理信息反编码使用CLG

百度地图-反编码心得

类似于微信中的发送位置,拖拽重新定位,以及反编码,列表附近的位置. 思路就是将一个UIImageView固定在地图中间,每次更新位置,给UIImageView添加动画即可. 代码如下: #import "FTBasicController.h" typedef void (^SelectBlock) (NSString *address,CLLocationCoordinate2D select); @interface FTUploadAddressController : FTBa

位置与地图:几种位置反编码方式

位置反编码的基本概念 位置的编码就是将经纬度转换为具体的位置信息 ios5.0之后使用CLGeocoder类,用于反编码处理;ios5之前则使用MKReverseGeoCoder类进行反编码处理 1.CLGeocoder位置反编码 //-------------------CLGeocoder位置反编码 - 5.0之后使用------------------------- CLGeocoder *geocoder = [[CLGeocoder alloc]init]; [geocoder rev

Demo:地图展示,定位,地理编码,标注,离线地图等

Demo:地图展示,定位,地理编码,标注,离线地图等 简单的实现天地图部分功能,地图展示,定位,地理编码,标注,公交和驾车规划,离线地图等功能,简单明了. 下载地址:http://www.devstore.cn/code/info/81.html 运行截图: