前面咱们配置好了SDK的环境,也在高德的官网中申请了AppKey:de5b39fb2b066ed80c51383bb3a1fe42,接下来咱们就能够开始代码的编写,实现一个基本的地图显示了
|
前面咱们完成了地图的基本展现和定位,下面咱们一块儿来发掘地图上的其余功能。此次咱们来探索一下地图中的搜索功能。
1.使用搜索功能,须要再添加一个搜索功能库,这个库能够在高德的Demo文件中找到,添加到工程中能够直接使用
2.添加完framework库之后,就能够直接使用了搜索功能了(经过关键字进行搜索)
(1)导入头文件
#import <AMapSearchKit/AMapSearchAPI.h>
(2)导入使用到的协议 <AMapSearchDelegate>
(3)建立一个搜索类
<1>建立一个SeachAPI对象,传入参数:appKey和回调对象实现者声明
<2>建立一个搜索请求对象(设置请求的参数)
<3>搜索请求对象的属性设置(搜索模式,搜索地点关键字,搜索城市,是否返回拓展信息)
(4)在回调中获取搜索结果的信息
<1>回调中成功返回会有请求的对象信息和返回的对象信息
<2>先判断是否具备所搜索的对象,若是有搜多结果,则打印处理搜索出来的结果
<3>打印一些有用的结果参数
<4>返回对象AMapPOI中的一些基本属性(参数Model)
3.搜索功能的另一种形式(经过区域中心范围搜索)
<1>一样须要建立_search对象
<2>在配置请求信息时设置的属性参数不一样
<3>主要设置的搜索按照location返回搜索结果(经纬度设置)
<4>设置排序方式,使用按照距离远近排序(近的排在前面)
5.在搜索请求添加约束条件
<1>filter为request添加约束条件
<2>filter中的属性costFilter约束消费的平均范围
<3>属性AMapRequireGroupbuy设置搜索行业的信息(这里代表搜索全行业)
6.到这里,搜索功能就基本结束了,具体的其余功能,能够查看高德地图Demo中的MapViewPOI文件数组
接下来,须要了解一下高德地图中的大头针的简单使用,来标示出咱们须要搜索的位置,和咱们本身的位置
1.大头针的简单建立
(1)建立一个大头针的对象
(2)设置大头针的坐标位置
(3)设置大头针的文本提示语
(4)把大头针加入到数组中annotations为装载大头针的数组
(5)把大头针数组设置到mapView中
<1>设置mapView中的大头针数组
<2>显示加载到mapView中的大头针
2.大头针的自定义
在mapView的回调中,有从新设定mapView大头针的方法
这里回调中给出了大头针对象和mapView对象
能够根据这两个参数生成一个大头针的view对象,返回给mapView,mapView将自动改变大头针的样式
(1)大头针的重用机制
这里使用的大头真重用机制与tableview中的重用机制相仿,当大头针拖拽出界面之后,大头真会被回收,用来显示别的大头针(这样可使上千上万的大头针不须要一块儿加载到mapView中,只是现实界面中所须要显示的便可)
(2)大头针的样式改动
<1>canShowCallout:是否显示选中时的状态显示(显示设定好的标题)
<2>animatesDrop:拖动时是否具备动画
<3>draggable:是否支持拖动
<4>rightCalloutAccessoryView:显示在气泡右侧的view设定
<5>pinColor:大头针的颜色,有MAPinAnnotationColorRed, MAPinAnnotationColorGreen, MAPinAnnotationColorPurple三种
<6>注意:拖动须要长按大头针方可以使用(在容许拖动的状态下)
app