行政区边界数据检索可以根据省、市、县(区)级行政区划名称,返回查询行政区划的详细边界信息。
行政区边界数据检索功能使用的是地图SDK的检索功能,需要在工程中导入检索功能包BaiduMapAPI_Search.framework
#import <BaiduMapAPI_Base/BMKBaseComponent.h>#import <BaiduMapAPI_Search/BMKSearchComponent.h>
BMKDistrictSearch *search = [[BMKDistrictSearch alloc] init];
search.delegate = self;
BMKDistrictSearchOption *option = [[BMKDistrictSearchOption alloc] init];option.city = @"北京";option.district = @"朝阳区";
BOOL flag = [search districtSearch:option];if (flag) {NSLog(@"district检索发送成功");} else {NSLog(@"district检索发送失败");}
/***返回行政区域搜索结果*@param searcher 搜索对象*@param result 搜索结果BMKDistrictSearch*@param error 错误号,@see BMKSearchErrorCode*/- (void)onGetDistrictResult:(BMKDistrictSearch *)searcher result:(BMKDistrictResult *)result errorCode:(BMKSearchErrorCode)error {if (error == BMK_SEARCH_NO_ERROR) {//在此处理正常结果} else {NSLog(@"检索失败");}}
通过代理返回的error判断检索是否成功,如果检索成功,可通过解析result字段获取具体的结果。具体使用示例可参照官方demo中的BMKDistrictSearchPage。BMKDistrictResult类结构如下图:
说明:
BMKDistrictResult | 行政区边界检索结果类 | ||
NSArray *paths | 行政区边界直角地理坐标点数据(NSString数组,字符串数据格式为: @"x,y;x,y") |
以北京朝阳区为例,检索后绘制效果如下:
上一篇
下一篇
本篇文章对您是否有帮助?