iOS8 根据经纬度显示地名

我们很多时候做项目的时候都选用通过手机获取定位,然后传数据给后台,这是iOS8根据经纬度显示地名的demo

//1.导入框架

//

//  NearByViewController.m

//  nearDemo

//

//  Created by apple on 14/12/5.

//  Copyright (c) 2014年 youdianshang. All rights reserved.

//

#import <CoreLocation/CoreLocation.h>

#import <MapKit/MapKit.h>

@interface
NearByViewController ()<UITableViewDataSource,UITableViewDelegate,CLLocationManagerDelegate,DataRequestManagerDelegate>

{

NSUserDefaults *defaluts;

NSString * jingduStr;

NSString *weiduStr;

NSString *LocationAddress;

}

@property(nonatomic,retain)CLLocationManager *locationManager;

@property(strong,nonatomic)UILabel *positionLabel;

/*

经纬度相关设置

*/

-(void)getLocationAll

{

self.locationManager = [[CLLocationManager
alloc]init];

_locationManager.delegate =
self;

_locationManager.desiredAccuracy =
kCLLocationAccuracyBest;

_locationManager.distanceFilter =
10;

[_locationManager
requestAlwaysAuthorization];//添加这句

[_locationManager
startUpdatingLocation];

}

/*

//通过经纬度得到当前地理位置

-(void)change{

defaluts=[NSUserDefaults
standardUserDefaults];

CLLocationCoordinate2D coordinate;

coordinate.latitude =  [[NSString
stringWithFormat:@"%@",jingduStr]
floatValue];

coordinate.longitude = [[NSString
stringWithFormat:@"%@",weiduStr]
floatValue];

CLLocation *newLocation=[[CLLocation
alloc]initWithLatitude:coordinate.latitude
longitude: coordinate.longitude];

CLGeocoder *geocoder=[[CLGeocoder
alloc] init];

[geocoder reverseGeocodeLocation:newLocation
completionHandler:^(NSArray* placemarks,
NSError* error)

{

MKPlacemark*placemark = [placemarks
objectAtIndex:0];

LocationAddress = [NSString
stringWithFormat:@"%@%@%@%@",  placemark.locality, placemark.subLocality,placemark.thoroughfare,
placemark.subThoroughfare];

[defaluts
setObject:LocationAddress
forKey:@"address"];

NSLog(@"终极目标:1:%@2:%@3:%@4:%@",  placemark.locality,
placemark.subLocality,placemark.thoroughfare,placemark.subThoroughfare);

}];

#pragma mark--实现CLLocationManagerDelegate的代理方法,获取地理位置(镔)===========================================================================

//(1)获取到位置数据,返回的是一个CLLocation的数组,一般使用其中的一个

- (void)locationManager:(CLLocationManager *)manager didUpdateLocations:(NSArray *)locations

{

CLLocation *currLocation = [locations
lastObject];

NSLog(@"经度=%f
纬度=%f
高度=%f", currLocation.coordinate.latitude, currLocation.coordinate.longitude,
currLocation.altitude);

jingduStr =[NSString
stringWithFormat:@"%f", currLocation.coordinate.latitude];

weiduStr =[NSString
stringWithFormat:@"%f", currLocation.coordinate.longitude];

NSLog(@"jijijijijij:%@",jingduStr);

[self change];

}

//(2)获取用户位置数据失败的回调方法,在此通知用户

- (void)locationManager:(CLLocationManager *)manager didFailWithError:(NSError *)error

{

if ([error code] ==
kCLErrorDenied)

{

//访问被拒绝

}

if ([error
code] == kCLErrorLocationUnknown) {

//无法获取位置信息

}

}

时间: 2024-10-08 20:20:42

iOS8 根据经纬度显示地名的相关文章

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

1. 根据经纬度获取地名 [objc] view plaincopy在CODE上查看代码片派生到我的代码片 CLGeocoder *clGeoCoder = [[CLGeocoder alloc] init]; [clGeoCoder reverseGeocodeLocation:newLocation completionHandler: ^(NSArray *placemarks,NSError *error) { for (CLPlacemark *placeMark in placema

ios8 UITableVIewCell 侧滑显示多个按钮

-(NSArray<UITableViewRowAction*>*)tableView:(UITableView *)tableView editActionsForRowAtIndexPath:(NSIndexPath *)indexPath { UITableViewRowAction *rowAction = [UITableViewRowAction rowActionWithStyle:UITableViewRowActionStyleDefault title:@"删除&

在谷歌地图上显示地名等信息,类似infowindow

function Tooltip(options) {      this.marker_ = options.marker;     this.content_ = options.content;     this.map_ = options.marker.get('map');     this.cssClass_ = options.cssClass || null;      this.is_hidden = options.is_hidden === undefined ? !0 

iOS8 UILabel BUG ? text不显示

以前的一个项目,今天发现有个地方在iOS8上面不显示文本,用的是UILabel 于是调试了一下代码,大致发现了原因: 当在一个UILabel上添加同样是UILabel的subView的时候,如果给父Label设置背景颜色(setBackgroundColor:)但没有设置Text(setText:),那么子Label设置的text就显示不了,真是一个奇怪的问题. 下面有3种解决办法: 1.将父Label改成UIView 2.不设置父Lable的背景颜色 3.设置父Label的Text( [sup

南沙政府应急系统之GIS一张图(arcgis api for flex)讲解(三)显示地图坐标系模块

config.xml文件的配置如下: 1 2 <widget left="3" bottom="3" config="widgets/Coordinate/CoordinateWidget.xml" url="widgets/Coordinate/CoordinateWidget.swf" /> 源代码目录如下: 地图坐标系模块的源代码原理解析,详细的代码在下载的开源flexviewer自带的: (1)Coordi

Echarts 显示百度地图的用法(2)

<script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=vgQfNjTQDlCar24CrTIdWcwY"></script> <div id="allmap" style="height: 600px"></div><br/> <span id="ln

天津政府应急系统之GIS一张图(arcgis api for flex)解说(三)显示地图坐标系模块

config.xml文件的配置例如以下: 1 2 <widget left="3" bottom="3" config="widgets/Coordinate/CoordinateWidget.xml" url="widgets/Coordinate/CoordinateWidget.swf" /> 源码文件夹例如以下: 地图坐标系模块的源码原理解析,具体的代码在下载的开源flexviewer自带的: (1)Coo

UI进阶 地图

一.地图的简介 在移动互联网时代,移动app能解决用户的很多生活琐事,比如    导航:去任意陌生的地方    周边:找餐馆.找酒店.找银行.找电影院    手机软件:微信摇一摇.QQ附近的人.微博.支付宝等 在上述应用中,都用到了地图和定位功能,在iOS开发中,要想加入这两大功能,必须基于两个框架进行开发    Map Kit :用于地图展示    Core Location :用于地理定位 二.地图定位 CoreLocation框架的使用: 导入头文件        #import <Cor

iOS开发拓展篇—CoreLocation地理编码

iOS开发拓展篇—CoreLocation地理编码 一.简单说明 CLGeocoder:地理编码器,其中Geo是地理的英文单词Geography的简写. 1.使用CLGeocoder可以完成“地理编码”和“反地理编码” 地理编码:根据给定的地名,获得具体的位置信息(比如经纬度.地址的全称等) 反地理编码:根据给定的经纬度,获得具体的位置信息 (1)地理编码方法 - (void)geocodeAddressString:(NSString *)addressString completionHan