iOS指南针

2016-05-28  本文已影响481人  珍此良辰

前言:

这个小项目使用到了CoreLocation框架里面的设备朝向功能,对CoreLocation感兴趣的可以翻一下之前的文章

在另一个博客站有朋友发现一个尴尬的问题(图片的东西2个方向是不对的),原谅我的大意,赶时间就直接百度了张图片,大家注意下就好了哈!sorry~

指南针实现

指南针效果图.gif
// 接收到设备朝向
- (void)locationManager:(CLLocationManager *)manager didUpdateHeading:(CLHeading *)newHeading
{
    // 判断朝向是否有效
    if (newHeading.headingAccuracy < 0) {
        return;
    }
    
    // 获取设备朝向
    CLLocationDirection angle = newHeading.magneticHeading;
    
    // 将角度转成弧度(角度 / 180.0 * M_PI)
    CGFloat hudu = angle / 180.0 * M_PI;
    
    // 因为如果没有动画的话旋转的时候回出现卡顿的现象,为了更流畅,我们给它加个动画
    [UIView animateWithDuration:0.1 animations:^{
        // 旋转图片
        self.comPassImage.transform = CGAffineTransformMakeRotation(-hudu);
    }];
    
}


    // 判断当前设备磁力计是否正常
    if (![CLLocationManager headingAvailable]) {
        return;
    }

上一篇 下一篇

猜你喜欢

热点阅读