文档章节

iOS开发 在google地图上显示自己的位置,值得收藏

baisou
 baisou
发布于 2013/07/27 11:03
字数 355
阅读 638
收藏 5

一行代码显示你的位置

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地图上展示自己的当前位置。

© 著作权归作者所有

共有 人打赏支持
baisou
粉丝 3
博文 71
码字总数 65407
作品 0
广州
程序员
私信 提问
谷歌Flutter跨平台应用开发SDK迎来首个发行预览版本

谷歌Flutter跨平台应用开发SDK迎来首个发行预览版本 2018-06-22 12:26编辑: 枣泥布丁分类:程序人生来源:程序师 跨平台Google Flutter预览版本 招聘信息: 图像处理及模式识别工程师 C/C+...

枣泥布丁
2018/06/22
0
0
Google 或于今天发布 iOS 版地图

Google地图一直预装在iPhone中,但是在9月份发布的iOS 6中,苹果使用了自己开发的地图,放弃了Google地图。不过,苹果地图显然是仓促上线,问题多多。不少用户希望能重新使用Google地图,一个...

oschina
2012/12/13
2.7K
12
ios 有没有做GIS的开源SDK或软件?

最近想做一款GIS的应用程序,部署在ipad硬件上;但我不知道怎么入手。就是在ipad上能够显示地图、导航,采集,标注等功能的GIS软件。 查找了许多资料都是基于ARCGIS API for ios;baidu API ...

ios与GIS新手
2012/12/06
1K
4
iOS 学习资料整理

视频教程(英文) Developing iOS 7 Apps for iPhone and iPad 斯坦福开放教程之一, 课程主要讲解了一些 iOS 开发工具和 API 以及 iOS SDK 的使用, 属于 iOS 基础视频 iPad and iPhone Applic...

拉偶有所依
2015/01/19
2.2K
4
iOS开发之在google地图上显示自己的位置

一行代码显示你的位置 iOS中的MapKit集成了定位的功能,使用一行代码就可以在google地图上展示出自己当前的位置,代码如下: -(IBAction) showLocation:(id) sender { isEqualToString:@"Sho...

于赟
2012/11/01
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Python如何开发桌面应用程序?Python基础教程,第十三讲,图形界面

当使用桌面应用程序的时候,有没有那么一瞬间,想学习一下桌面应用程序开发?行业内专业的桌面应用程序开发一般是C++,C#来做,Java开发的也有,但是比较少。本节课会介绍Python的GUI(图形用...

程序员补给栈
21分钟前
1
0
kafka在的使用

一、基本概念 介绍 Kafka是一个分布式的、可分区的、可复制的消息系统。它提供了普通消息系统的功能,但具有自己独特的设计。 这个独特的设计是什么样的呢? 首先让我们看几个基本的消息系统...

狼王黄师傅
27分钟前
1
0
Android JNI总结

0x01 JNI介绍 JNI是Java Native Interface的缩写,JNI不是Android专有的东西,它是从Java继承而来,但是在Android中,JNI的作用和重要性大大增强。 JNI在Android中起着连接Java和C/C++层的作...

天王盖地虎626
昨天
1
0
大数据教程(11.8)Hive1.2.2简介&初体验

上一篇文章分析了Hive1.2.2的安装,本节博主将分享Hive的体验&Hive服务端和客户端的使用方法。 一、Hive与hadoop直接的关系 Hive利用HDFS存储数据,利用MapReduce查询数据。 二、Hive与传统数...

em_aaron
昨天
3
0
跟我学Spring Cloud(Finchley版)-15-Hystrix监控详解

Hystrix提供了监控Hystrix Command的能力,本节来详细探讨。 监控端点与数据 应用整合Hystrix,同时应用包含spring-boot-starter-actuator 依赖,就会存在一个/actuator/hystrix.stream 端点...

周立_ITMuch
昨天
7
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部