如何实现Google Map Api V2 Android的搜索功能?

时间:2014-02-09 18:29:41

标签: android google-maps search maps google-maps-android-api-2

我需要为我的Android Google Map Api V2项目实现搜索功能,但找不到任何有用的示例。我只需输入城市名称,按“搜索”按钮,然后地图应移动到城市并在其上显示标记。就像谷歌地图应用程序一样。自动完成应该很好。我实际上可以显示地图,显示一些标记等,我无法进行搜索并查看结果。请帮忙!

提前致谢

2 个答案:

答案 0 :(得分:6)

  

我只需要输入城市名称,然后按“搜索”按钮   地图应该移动到城市并在其上显示标记。就像   谷歌地图应用程序。

因此,您必须按照以下方式在Click of search上创建功能:

  • 用户输入的城市名称将发送至google api - 它 我会回到你那里。
  • 您将使用该lat-long添加标记以及
  • 您将使用该lat-long为Gmaps Camara制作动画。就是这样。
  • 通过这种方式,您可以满足上述要求。

答案 1 :(得分:0)

据我所知,通过调用GoogleMap对象的moveCamera()方法将地图移动到某个点:

 GoogleMap map = ((MapFragment) getFragmentManager()
            .findFragmentById(R.id.map)).getMap();

 LatLng sydney = new LatLng(-33.867, 151.206);

 map.setMyLocationEnabled(true);
 map.moveCamera(CameraUpdateFactory.newLatLngZoom(sydney, 13));

取自this示例。

如您所见,您需要用于创建LatLng对象的纬度和经度坐标。我相信您可以使用谷歌搜索来获取这些坐标,使用http请求。例如:

https://maps.googleapis.com/maps/api/place/textsearch/xml?query=restaurants+in+Sydney&sensor=true&key=AddYourOwnKeyHere

取自here

应该为您返回JSON数据。

有关自动填充功能,请参阅this链接

编辑: Wops,地点搜索会返回xml,尝试使用... json?query = ...而不是