首页 > 解决方案 > Google Places API 搜索结果在地图上刷新

问题描述

我正在尝试使用 iOS 上的 Places and Maps API 来搜索给定半径内的地点,并使用关键字按类型过滤。

我已经实现了地点搜索,以通过过滤器选项获取地点结果。没关系。现在我必须将这些位置作为标记放在地图上,问题就来了。

如果我移动/缩放地图,则需要根据坐标/视口更新标记列表。使用places api获取数据的最佳实践是什么?places api 的搜索仅显示 20 个结果,您必须使用 next_page_token 再次调用,才能获得完整的结果列表。显然,这不是移动时更新地图标记的最有效和最优雅的方式......

对不起,如果这是一个n00b问题,我很久以前使用Google Maps API,当时对搜索结果编号没有限制......

标签: iosobjective-cgoogle-maps

解决方案


https://developers.google.com/maps/documentation/ios-sdk/events

您将希望GMSMapViewDelegate在 ViewController 中实现该协议,以便您可以侦听 Camera Position 事件。mapView:idleAtCameraPosition:最佳做法是通过监听事件等到移动地图停止。这样,您就不会进行过多不必要的搜索或重新绘制可能会降低性能的标记。示例代码位于: https ://developers.google.com/maps/documentation/ios-sdk/events#camera_position


推荐阅读