【问题标题】:How to make a search with autosuggest in the Bing Maps SDK?如何在 Bing Maps SDK 中使用自动提示进行搜索?
【发布时间】:2021-05-08 00:14:15
【问题描述】:

我正在尝试使用 Bing Maps SDK 来显示一张地图,其中我显示了 SearchView。在这个SearchView 中,我想搜索位置,当我点击建议的位置时,在地图上的那个位置放置一个标记。

我以前使用过 HERE SDK,它有一个文档可以执行此操作,但在 Android 上我找不到有关此 Bing Maps SDK 的任何文档。

我想在 Android 中实现的是:https://www.bing.com/api/maps/sdk/mapcontrol/isdk/autosuggestui#TS

【问题讨论】:

    标签: java android kotlin bing-maps bing-api


    【解决方案1】:

    有关必应地图自动建议服务的文档可在此处找到:https://docs.microsoft.com/en-us/bingmaps/rest-services/autosuggest

    您可以将它与 Android AutoCompleteTextView 一起使用来创建建议 UI。您将从上述服务中异步检索建议。以下是一些很好的示例:

    https://www.truiton.com/2018/06/android-autocompletetextview-suggestions-from-webservice-call/

    How to implement autocompletetextview in Android Studio with an API call?

    此服务不返回坐标。这样做是为了不将其用作geocoding service 的替代品,从而使他们能够使其成为一项成本较低的服务。当用户选择建议时,您需要调用地理编码器以获取formattedAddress 的坐标,然后您可以使用它在地图上显示标记。我建议将结果限制设置为 1,因为您只想获得最高结果。

    总结;

    1. 使用 AutoCompleteTextView 的 addTextChangedListener 事件从自动建议服务中检索建议。
    2. 使用 AutoCompleteTextView 的 setOnItemClickListener 事件来检索用户的选择,并将 formattedAddress 值传递给地理编码服务。
    3. 使用地理编码器响应中的坐标创建标记并添加到地图中。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-05-19
      • 1970-01-01
      • 2011-07-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多