iOS CoreLocation的使用
1.引入框架,import头文件
#import <CoreLocation/CoreLocation.h>
2.添加定位管理器为成员变量(否则无法定位),并用延迟加载的方法实例化它
@property (nonatomic,strong) CLLocationManager *locMgr;
1 /** 2 * 懒加载 3 */ 4 - (CLLocationManager *)locMgr 5 { 6 if (_locMgr == nil) { 7 _locMgr = [[CLLocationManager alloc]init]; 8 self.locMgr.delegate = self; 9 } 10 return _locMgr; 11 }
3.开始定位
1 - (void)viewDidLoad 2 { 3 [super viewDidLoad]; 4 5 // 开始定位 6 [self.locMgr startUpdatingLocation]; 7 8 }
4.实现 CLLocationManager的代理方法
1 #pragma mark - CLLocationManager的代理方法 2 - (void)locationManager:(CLLocationManager *)manager didUpdateLocations:(NSArray *)locations 3 { 4 // 取出位置,位置之所以是数组,是因为所在的位置即可是A地点,又可能是B地点,例如北京和河北的边界,一般取位置数组的第一个更为精确 5 CLLocation *location = [locations firstObject]; 6 7 // 取出经纬度 8 CLLocationCoordinate2D coordinate = location.coordinate; 9 10 // 输出 11 NSLog(@"经度是%f , 纬度是%f",coordinate.longitude,coordinate.latitude); 12 13 // 停止定位,该代理方法调用频率非常高,不需要定位时,请停止定位 14 [self.locMgr stopUpdatingLocation]; 15 }
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。