iOS开发中地图与定位
不管是QQ还是微信的移动client都少不了定位功能,之前在微信demo中没有加入定位功能,今天就写个定位的小demo来了解一下定位和地图的东西。
地图和定位看上去是挺高大上一东西。其有使用方法比TableView简单多了。以下的Demo是用的iOS中自带的地图和定位,当然了也能够用第三方的来载入地图。比方百度地图啥的,在这就不赘述了。今天的博客主要是介绍MKMapView的使用。MapView的使用和其它组件的使用方法差点儿相同。MapView用的是托付回调,在使用mapView的Controller中要实现MKMapViewDelegate协议,并注冊托付回调,然后实现对应的回调方法就可以。
一。构建Demo的组件
为了节省时间这个demo中的MapView是用Storyboard拖出来的,storyboard中的结构例如以下所看到的,上面是MKMapView用于显示地图。以下的labei用于显示当前经纬度:

二,引入MKMapView要用的包,截图例如以下:

三、编写标注模块的类
1.首先解释一下标注模块是什么东西:标注模块就是显示当前地理位置的信息,以下图种绿色框中是标注模块:

2.编写标注类,标注类必须实现MKAnnotation协议。MyAnnotation.h中的代码例如以下:

3.实现协议MyAnnotation中的方法,titile返回的是标题,subTitle是子标题,代码例如以下:

四、编写ViewController中的代码
1.ViewController.h中要引入对应的包和实现对应的协议代码例如以下

2.编写ViewController.m中的代码,实现协议中对应的托付回调方法,.m中的延展和初始化方法例如以下

3.实现托付回调中的标注视图,代码截图例如以下:

4.获取地理位置信息。代码例如以下:
以上是Demo的全部代码,以下是执行的效果图:

iOS开发中地图与定位的更多相关文章
- iOS开发系列--地图与定位
概览 现在很多社交.电商.团购应用都引入了地图和定位功能,似乎地图功能不再是地图应用和导航应用所特有的.的确,有了地图和定位功能确实让我们的生活更加丰富多彩,极大的改变了我们的生活方式.例如你到了一个 ...
- 转-iOS开发系列--地图与定位
来自: http://www.cnblogs.com/kenshincui/p/4125570.html#autoid-3-4-0 概览 现在很多社交.电商.团购应用都引入了地图和定位功能,似乎地图功 ...
- iOS开发系列--地图与定位总结
现在很多社交.电商.团购应用都引入了地图和定位功能,似乎地图功能不再是地图应用和导航应用所特有的.的确,有了地图和定位功能确实让我们的生活更加丰富多彩,极大的改变了我们的生活方式.例如你到了一个陌生的 ...
- iOS开发之地图与定位
无论是QQ还是微信的移动客户端都少不了定位功能,之前在微信demo中没有添加定位功能,今天就写个定位的小demo来了解一下定位和地图的东西.地图和定位看上去是挺高大上一东西,其实用法比TableVie ...
- iOS开发中地图开发的简单应用
iOS上使用地图比Android要方便,只需要新建一个MKMapView,addSubView即可.这次要实现的效果如下: 有标注(大头针),定位,地图. 1.添加地图 1.1 新一个Single V ...
- ios开发中如何调用苹果自带地图导航
前段时间一直在赶项目,在外包公司工作就是命苦,天天加班不说,工作都是和工期合同挂钩的,稍微逾期就有可能被扣奖金,不谈这些伤脑筋的事情了,让我们说说iOS开发中如何调用苹果手机自带的地图. 学习如逆水行 ...
- [转]iOS开发中的火星坐标系及各种坐标系转换算法
iOS开发中的火星坐标系及各种坐标系转换算法 源:https://my.oschina.net/u/2607703/blog/619183 其原理是这样的:保密局开发了一个系统,能将实际的坐标转 ...
- iOS进阶_地图上定位的标志——大头针
一.添加大头针 地图使用的框架是MapKit 大头针走的是MKAnnotation协议 /* 注意:因为是满足协议MKAnnotation,所以没有MKAnnotation的系统大头针类,必须自定义大 ...
- iOS开发——高级篇——地理定位 CoreLocation
一.CoreLocation 在移动互联网时代,移动app能解决用户的很多生活琐事,比如周边:找餐馆.找KTV.找电影院等等导航:根据用户设定的起点和终点,进行路线规划,并指引用户如何到达 在上述应用 ...
随机推荐
- C++ 编程笔记
图片有点大,请耐心下载!
- Kernel Space与User Space(转)
对于刚刚接触Linux的菜鸟来说,可能会不理解大家常说的Kernel Space和User Space是什么意思,我简单搜了一下,发现阮一峰写过一个比较简洁的介绍,贴下来给大家: 学习 Linux 时 ...
- 【bzoj4281】[ONTAK2015]Związek Harcerstwa Bajtockiego 树上倍增+LCA
题目描述 给定一棵有n个点的无根树,相邻的点之间的距离为1,一开始你位于m点.之后你将依次收到k个指令,每个指令包含两个整数d和t,你需要沿着最短路在t步之内(包含t步)走到d点,如果不能走到,则停在 ...
- Start state is missing. Add at least one state to the flow
springmvc配置过程中,会配置数据库文件,比如说如下文件:这个时候可能会出现“Start state is missing. Add at least one state to the flow ...
- 【Luogu】P4219大融合(LCT)
题目链接 LCTrotate打错尬死 容易发现本题就是问两边子树大小乘积,于是开个数组动态维护LCT每个节点虚子树上有多少点,在Access和Link的时候更新即可. #include<cstd ...
- 【SPOJ694】Distinct Substrings (SA)
求不相同子串个数 该问题等价于求所有后缀间不相同前缀的个数..也就是对于每个后缀suffix(sa[i]),将贡献出n-sa[i]+1个,但同时,要减去那些重复的,即为height[i],故答案 ...
- .bat 批处理
最简单的一个批处理文件 @echo off echo 这是测试内容1 echo 这是测试内容2 pause 输出: 这是测试内容1 这是测试内容2 请按任意键继续. . .
- [TYVJ1930]编年史
现在 applepi 手上有一本十分古老的编年史,这本史书记录了很多著名的历史事件.于是applepi 有了一个奇怪的想法……他想知道那些有名的历史事件都是在星期几发生的.现在轮到你了,你要帮助app ...
- xCode控制台的使用-应用闪退原因跟踪
xCode控制台的使用-应用闪退原因跟踪 今天遇到这个一个问题,使用xCode version = 5.0 编译一个程序,刷到IOS7设备后,应用运行正常,但是刷新到IOS<7,打开饮用后就会出 ...
- AC日记——[NOI2006]最大获利 bzoj 1497
1497 思路: 最小割: 来,上代码: #include <cstdio> #include <cstring> #include <iostream> #inc ...