本文主要是介绍iOS-Andriod百度地图仿百度外卖-饿了么-选择我的地址-POI检索/,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
http://zanderzhang.gitcafe.io/2015/09/19/iOS-Andriod百度地图仿百度外卖-饿了么-选择我的地址-POI检索/
title: iOS Andriod百度地图仿百度外卖 饿了么 选择我的地址 POI检索
date: 2015-09-19 21:06:26
tags:
百度外卖选择送货地址:
饿了么选择送货地址:
百度地图api官网
第一个图,就是放一个UIImageView
在MapView
的中间,然后我们拖动的时候下面地图在跑.
-(void)addMiddleImage{
UIImageView *imaV=[UIImageView new];
imaV.center=_mapView.center;
imaV.bounds=CGRectMake(0, 0, 24, 36);
imaV.image=[UIImage imageNamed:@"poi_icon"];
[self.view addSubview:imaV];
}
取屏幕中心点,也就是UIImageView
的坐标:geo.reverseGeoPoint=mapStatus.targetGeoPt;
geo是BMKReverseGeoCodeOption *geo;
移动完成会调用:
-(void)mapStatusDidChanged:(BMKMapView *)mapView{BMKMapStatus *mapStatus=[mapView getMapStatus];geo.reverseGeoPoint=mapStatus.targetGeoPt;[_geoSearcher reverseGeoCode:geo];NSLog(@"mapStatusDidChanged"); }
回调函数获得反编译结果和周边result.poiList:
-(void)onGetReverseGeoCodeResult:(BMKGeoCodeSearch *)searcher result:(BMKReverseGeoCodeResult *)result errorCode:(BMKSearchErrorCode)error{[geoArr removeAllObjects];[geoArr addObjectsFromArray:result.poiList];if (result.poiList.count) {BMKPoiInfo *info=result.poiList[0];_city=info.city;}[_bottomTable reloadData]; }
第二个图,我开始使用在线建议查询
,后面发现这个POI搜索
更好用点,它有三种,我使用的是POI城市内搜索
:
开始检索:
_bMKPoiSearch =[[BMKPoiSearch alloc]init];
_bMKPoiSearch.delegate = self;
BMKCitySearchOption *option=[BMKCitySearchOption new];
// 城市内搜索
option.city =_city;
option.keyword = searchText;
[_bMKPoiSearch poiSearchInCity:option];
回调返回:
-(void)onGetPoiResult:(BMKPoiSearch )searcher result:(BMKPoiResult )poiResult errorCode:(BMKSearchErrorCode)errorCode{[_suggestionSearchArr removeAllObjects];
[_suggestionSearchArr addObjectsFromArray:poiResult.poiInfoList];
[_suggestionTable reloadData];}`
在poiResult
里面有poiInfoList
,成员是BMKPoiInfo
,跟第一个图一样.
Andriod和这差不多,函数有所区别.有需要demo的朋友可以留邮箱.
这篇关于iOS-Andriod百度地图仿百度外卖-饿了么-选择我的地址-POI检索/的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!