为Android设备放置自动完成功能

时间:2011-10-22 08:24:58

标签: android google-maps-api-3 geolocation

我需要街头风雨和商业的自动完成功能。位置包中的geoCoder没有给我我需要的东西。 我查看了google labs Places JSON API,但是来自该请求的响应只给出了地名和ID而不是lat的长度,因为你需要一个额外的响应,这可能会让你在地图上显示自动完成的位置变慢。

是否有任何其他api响应应包含Boh名称和最后\ long(考虑到我不会因为我可能在非常偏远的地方寻找地方而不必长时间地请求与我目前的位置无关。

1 个答案:

答案 0 :(得分:1)

这是我通过大量搜索找到的:

基本上来自google的Places API的JSON API有两个功能,一个用于搜索位置,另一个用于自动完成,两者都隐藏在PLACES API下的LABS代码中。 让它值得一试:

  1. 实现某种连接池或请求\响应池 如果你想取消它,有几个可用的请求 中间或完全杀死它你必须有这种 队列。 LWUIT IO可以作为一个很好的基础。
  2. 当用户在EditText中键入文本时,使用TextWatcher发送自动完成请求,如果尚未到达,则终止上一个请求,并在ListView中显示结果,以便用户可以选择一个选项。
  3. 你的布局中的
  4. 也应该有一个搜索按钮。如果用户从EditText中选择了一个自动完成项目(确保在执行此操作时关闭textWatcher,请在之后重新启用它!),如果用户按下搜索执行搜索JSON请求并显示结果在不同的ListView。
  5. 这几乎是Javasciript API以更方便的方式为您提供的。 您可以随时使用带有map api java脚本和地图的WebView,并使用android JavaScriptInterfaces将回调传递给WebView JS。