- (IBAction)codeBtnClick:(id)sender {
if (![self.cityName.text isEqualToString:@""]) {
//地理编码
CLGeocoder *geo = [[CLGeocoder alloc]init];
[geo geocodeAddressString:self.cityName.text completionHandler:^(NSArray<CLPlacemark *> * _Nullable placemarks, NSError * _Nullable error) {
if (!error) {
for (CLPlacemark *mark in placemarks) {
NSLog(@"%@",mark.name);
}
CLPlacemark *mark = placemarks[0];
double jingDu = mark.location.coordinate.longitude;
double weiDu = mark.location.coordinate.latitude;
self.jingDuLabel.text = [NSString stringWithFormat:@"%.2f",jingDu];
self.weiDuLabel.text = [NSString stringWithFormat:@"%.2f",weiDu];
self.detailLabel.text = mark.name;
}else {
NSLog(@"%@",error);
}
}];
}else {
self.detailLabel.text = @"对不起,地球上没有,可能在火星!";
}
}
//地理反编码
- (IBAction)unCodeBtnClick:(id)sender {
if ([self.jingDuTF.text isEqualToString:@""]||[self.weiDuTF.text isEqualToString:@""]) {
NSLog(@"火星");
}else {
CLGeocoder *geo = [[CLGeocoder alloc]init];
CLLocationDegrees jingDu = [self.jingDuTF.text doubleValue];
CLLocationDegrees weiDu = [self.weiDuTF.text doubleValue];
CLLocation *location = [[CLLocation alloc]initWithLatitude:weiDu longitude:jingDu];
[geo reverseGeocodeLocation:location completionHandler:^(NSArray<CLPlacemark *> * _Nullable placemarks, NSError * _Nullable error) {
if (!error) {
CLPlacemark *mark = placemarks[0];
self.addressLabel.text = mark.name;
}else {
NSLog(@"%@",error);
self.addressLabel.text = @"坐标太抽象";
}
}];
}
}