iOS定位--CoreLocation
2015-06-12 19:46
337 查看
一:导入框架
二:设置代理及属性
三:方法实现
#import <CoreLocation/CoreLocation.h>
二:设置代理及属性
<CLLocationManagerDelegate> @property (nonatomic, strong) CLLocationManager *locMgr;
三:方法实现
- (CLLocationManager *)locMgr {
warning 定位服务不可用
if(![CLLocationManager locationServicesEnabled]) return nil; if (!_locMgr) { // 创建定位管理者 self.locMgr = [[CLLocationManager alloc] init]; // 设置代理 self.locMgr.delegate = self; } return _locMgr; } - (void)viewDidLoad { [super viewDidLoad]; // 开始定位用户的位置 [self.locMgr startUpdatingLocation]; } #pragma mark - CLLocationManagerDelegate /** * 只要定位到用户的位置,就会调用(调用频率特别高) * @param locations : 装着CLLocation对象 */ - (void)locationManager:(CLLocationManager *)manager didUpdateLocations:(NSArray *)locations { // 1.取出位置对象 CLLocation *loc = [locations firstObject]; // 2.取出经纬度 CLLocationCoordinate2D coordinate = loc.coordinate; // 3.打印经纬度 NSLog(@"didUpdateLocations------%f %f", coordinate.latitude, coordinate.longitude); // 停止定位(省电措施:只要不想用定位服务,就马上停止定位服务) [manager stopUpdatingLocation]; } /** * 计算2个经纬度之间的直线距离 */ - (void)countLineDistance { // 计算2个经纬度之间的直线距离 CLLocation *loc1 = [[CLLocation alloc] initWithLatitude:40 longitude:116]; CLLocation *loc2 = [[CLLocation alloc] initWithLatitude:41 longitude:116]; CLLocationDistance distance = [loc1 distanceFromLocation:loc2]; NSLog(@"%f", distance); }
相关文章推荐
- iOS--CoreLocation地理反地理编码
- ios tableView性能优化策略
- IOS --- 对象归档
- iOS 数据持久化之使用NSUserDefaults存储数据
- ios ipa 发布遇到的问题记录
- OC基础:类和对象 分类: ios学习 OC 2015-06-12 18:55 17人阅读 评论(0) 收藏
- iOS 项目中用到的一些开源库和第三方组件
- IOS 需要学习的地方
- iBokan_ios80_自学系列_1(循环结构初练)
- IOS 调试lldb命令常用----po
- iOS scrollsToTop属性失效
- iOS 项目中用到的一些开源库和第三方组件
- iOS Code Signing 学习笔记
- iOS Provisioning Profile(Certificate)与Code Signing详解
- iOS开发备忘录:属性列表文件数据持久化
- 查看 ios 真机调试log,导出log
- 查看 ios 真机调试log,导出log
- IOS-TextField功能方法详解
- -pie can only be used when targeting iOS 4.2 or later
- IOS开发模块总结(一)本地数据存储5 NSFileManager