标签:
1.创建CLLocationManager对象,并且成为它的代理
- (CLLocationManager *)mgr { if (!_mgr) { _mgr = [[CLLocationManager alloc] init]; } return _mgr; }
self.mgr.delegate = self;
2.开始获取用户位置
[self.mgr startUpdatingHeading];
3.在代理方法里面实现功能
// 当获取到用户方向时就会调用 - (void)locationManager:(CLLocationManager *)manager didUpdateHeading:(CLHeading *)newHeading { // NSLog(@"%s", __func__); /* magneticHeading 设备与磁北的相对角度 trueHeading 设置与真北的相对角度, 必须和定位一起使用, iOS需要设置的位置来计算真北 真北始终指向地理北极点 */ // NSLog(@"%f", newHeading.magneticHeading); // 1.将获取到的角度转为弧度 = (角度 * π) / 180; CGFloat angle = newHeading.magneticHeading * M_PI / 180; // 2.旋转图片 /* 顺时针 正 逆时针 负数 */ // self.compasspointer.transform = CGAffineTransformIdentity; self.compasspointer.transform = CGAffineTransformMakeRotation(-angle); }
标签:
原文地址:http://www.cnblogs.com/forflame/p/4544797.html