最近项目中要求使用定位功能,要求在地图上可移动选择位置。下面来介绍下移动定位中使用的主要代码。
既然是定位肯定需要用到地图了,这里我使用的是高德地图。首先我们要到高德地图官网上申请一个apikey,登录自己的开发者账号,没有的需要申请,然后在应用管理中添加应用(按照要求填写),完成后会生成一个apikey,赋值过来到项目中APPdelegate里面设置一下:
[AMapServices sharedServices].apiKey = @"你的apikey";
然后在项目中使用cocopods倒入以下几个第三方:
需要引入的头文件:
需要设置的属性:
实例化对象⤵️
初始化搜索框:
初始化地图视图&地图:
初始化地图上的大头针和定位按钮:
初始化地图搜索对象和设置位置信息列表:
将实例化对象添加到视图上:
使用高德地图需要实现的代理方法:
UISearchBarDelegate,AMapSearchDelegate,MAMapViewDelegate
UISearchBarDelegate&AMapSearchDelegate方法:
1、搜索框开始编辑
2、搜索文本更改的时候调用
3、搜索按钮变化&点击搜索调用方法
4、逆地理编码查询回调函数&POI回调返回的数据信息
MAMapViewDelegate代理方法:
1、地图改变完成后调用
2、实时更新用户位置信息
tableview数据源信息显示
选择位置后的设置以及回调函数
设置回调函数,当点击列表某地理位置返回的用户经纬度信息,地址名称,省份,城市,区域,和地址。回调函数可自行设置需要的地理信息。
主要实现代码以及方法就这些,更多资料可查询高德地图api自行了解。