安卓Listview使用Google地图

4

我正在构建一个示例Android应用程序。最初,我会显示一些城市的列表。通过点击其中任何一个城市,它将显示与该城市相关的地图。

现在我遇到了如何将列表中选择的城市连接到Google地图的问题。如果有任何想法,请告诉我。

3个回答

2

您只需创建城市对象列表。每个对象将包含城市名称和位置(纬度、经度)。当您单击某个项目时,会通过Intent对象转到地图活动并传递位置信息。在地图活动中,您将解析该位置并告诉地图前往该点。


是的,你说得对,但我无法获取纬度和经度? - amarnathreddy
如果您还没有这样做,您的列表适配器应该扩展ArrayList<City>。对象City应包含名称、纬度和经度。当项目被点击时,您可以从ListView的onItemClicked中获取城市对象。此方法会给您数组中的项目位置,然后您可以获取City item = cities.get(position);。然后,您可以创建一个意图,并将其捆绑到它的包中,以此方式传递纬度和经度:Intent intent = new Intent(MyActivity.this, MyMapActivity.class); intent.putExtra("latitude", item.getLatitude()); intent.putExtra("longitude", item.getLongitude());startActivity(intent); - Emil Pana

0
首先,您需要一个包含城市和相应坐标的数据库(或列表活动中的本地数据结构)。然后,在onListItemClick()中创建新的意图,并将必要的数据(标题、坐标或数据库表中行的主键)插入到其额外信息中。使用此意图启动扩展MapActivity的新活动,获取mMapController = mMapView.getController();并执行mMapController.animateTo(new GeoPoint((int)yourLatitudeE6,(int)yourLongitudeE6)),其中yourLatitudeE6和yourLongitudeE6是来自意图的额外信息。

我该如何获取城市名称? - amarnathreddy

0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接