ios怎么设置百度地图云检索结果分页数据

 我来答
桐妍的童言ce
2017-08-20 · TA获得超过1393个赞
知道大有可为答主
回答量:1777
采纳率:0%
帮助的人:869万
展开全部
1
2
3
4
5
6
7
8

/**
*根据中心点、半径和检索词发起周边检索
*异步函数,返回结果在BMKPoiSearchDelegate的onGetPoiResult通知
*@param option 周边搜索的搜索参数类(BMKNearbySearchOption)
*@param index 页码,如果是第一次发起搜索,填0,根据返回的结果可以去获取第n页的结果,页码从0开始
*@return 成功返回YES,否则返回NO
*/
- (BOOL)poiSearchNearBy:(BMKNearbySearchOption*)option;

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19

_searcher = [[BMKPoiSearch alloc] init];
_searcher.delegate = self;

BMKNearbySearchOption *option = [[BMKNearbySearchOption alloc]init];
option.pageIndex = 0; // 起始页
option.pageCapacity = 30; // 每页条数
option.location = _locationCoordinate; // 中心点
option.keyword = self.keywordTF.text; // 关键词
option.sortType = BMK_POI_SORT_BY_DISTANCE; // 根据距离排序
option.radius = 3000; // 半径
BOOL flag = [_searcher poiSearchNearBy:option];
if(flag)
{
NSLog(@"周边检索发送成功");
}
else
{
NSLog(@"周边检索发送失败");
}

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22

//实现PoiSearchDeleage处理回调结果
- (void)onGetPoiResult:(BMKPoiSearch*)searcher result:(BMKPoiResult*)poiResult errorCode:(BMKSearchErrorCode)errorCode
{
if (errorCode == BMK_SEARCH_NO_ERROR) {
//在此处理正常结果
_result = poiResult;
[_mapView removeAnnotations:[_mapView annotations]];
for (int i = 0; i < poiResult.poiInfoList.count; i++) {
BMKPoiInfo *info = [poiResult.poiInfoList objectAtIndex:i];
BMKPointAnnotation *annotation = [[BMKPointAnnotation alloc] init];
annotation.title = info.name;
annotation.subtitle = info.address;
annotation.coordinate = info.pt;
[_mapView addAnnotation:annotation];
}

self.resultNumLabel.text = FORMATSTRING(@"共找到“%@”相关%d个结果",self.keywordTF.text,poiResult.currPoiNum);
}
else {
self.resultNumLabel.text = FORMATSTRING(@"抱歉,未找到“%@”相关的结果",self.keywordTF.text);
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式