iOS开发之在google地图上显示自己的位置-阿里云开发者社区

开发者社区> 开发与运维> 正文
登录阅读全文

iOS开发之在google地图上显示自己的位置

简介:

一行代码显示你的位置

iOS中的MapKit集成了定位的功能,使用一行代码就可以在google地图上展示出自己当前的位置,代码如下:

-(IBAction) showLocation:(id) sender {
     
    if ([[btnShowLocation titleForState:UIControlStateNormal]
         isEqualToString:@"Show My Location"]) {
        [btnShowLocation setTitle:@"Hide My Location"
                         forState:UIControlStateNormal];
        mapView.showsUserLocation = YES;       
    } else {
        [btnShowLocation setTitle:@"Show My Location"
                         forState:UIControlStateNormal];
        mapView.showsUserLocation = NO;
    }   
}

关键的代码就是:mapView.showUserLocation=YES.

使用CLLocationManager和MKMapView
还有就是通过CoreLocation框架写代码去请求当前的位置,一样也非常简单:
第一步:创建一个CLLocationManager实例
CLLocationManager *locationManager = [[CLLocationManager alloc] init];
第二步:设置CLLocationManager实例委托和精度
locationManager.delegate = self;
locationManager.desiredAccuracy = kCLLocationAccuracyBest;
第三步:设置距离筛选器distanceFilter,下面表示设备至少移动1000米,才通知委托更新
locationManager.distanceFilter = 1000.0f;
或者没有筛选器的默认设置:
locationManager.distanceFilter = kCLDistanceFilterNone;
第四步:启动请求
[locationManager startUpdatingLocation];
使用下面代码停止请求:
[locationManager stopUpdatingLocation];
 
CLLocationManagerDelegate委托
这个委托中有:locationManager:didUpdateToLocation: fromLocation方法,用于获取经纬度。
可以使用下面代码从CLLocation 实例中获取经纬度
CLLocationDegrees latitude = theLocation.coordinate.latitude;
CLLocationDegrees longitude = theLocation.coordinate.longitude;
使用下面代码获取你的海拔:
CLLocationDistance altitude = theLocation.altitude;
使用下面代码获取你的位移:
CLLocationDistance distance = [fromLocation distanceFromLocation:toLocation];

总结:本文主要是讲解了如何在iOS设备google地图上展示自己的当前位置。

 



本文转自麒麟博客园博客,原文链接:http://www.cnblogs.com/zhuqil/archive/2011/07/13/2105013.html,如需转载请自行联系原作者

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享: