"高德地图API Demo源码:带注释的AMapV2Demo示例"

需积分: 50 1 下载量 160 浏览量 更新于2024-01-31 收藏 156KB DOC 举报
// AMapV2地图简单显示,添加一个marker并且对marker响应点击事件 public class BasicMapActivity extends FragmentActivity implements OnMarkerClickListener { private AMap aMap; private Marker defaultMarker; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.basic_demo); init(); } /** * 初始化AMap对象 */ private void init() { if (aMap == null) { aMap = ((SupportMapFragment) getSupportFragmentManager(); } defaultMarker = aMap.addMarker(new MarkerOptions() .position(new LatLng(39.92422, 116.39775)) .icon(BitmapDescriptorFactory.defaultMarker(BitmapDescriptorFactory.HUE_AZURE)) .draggable(true)); aMap.setOnMarkerClickListener(this); } /** * Marker点击事件回调函数 */ @Override public boolean onMarkerClick(Marker marker) { if (marker.equals(defaultMarker)) { Toast.makeText(BasicMapActivity.this, "DefaultMarker", Toast.LENGTH_LONG).show(); } return false; } } // AMapV2地图简单显示,添加一个marker并且对marker响应点击事件 // 使用高德地图API比百度的用起来更舒服些 在这段代码中,我们展示了如何使用高德地图API在Android应用中简单显示地图并添加标记,并对标记的点击事件进行响应。我们创建了一个BasicMapActivity类,继承自FragmentActivity,并实现了OnMarkerClickListener接口。在onCreate()方法中,我们通过setContentView()方法设置了布局文件,然后调用init()方法进行初始化。 在init()方法中,我们首先判断aMap对象是否为空,如果为空则通过getSupportFragmentManager()方法获取SupportMapFragment,并将其转换为AMap对象赋值给aMap。然后,我们使用aMap.addMarker()方法在地图上添加一个标记,并设置其位置和图标。接着我们调用aMap.setOnMarkerClickListener()方法将当前类作为标记点击事件的回调接口。 在onMarkerClick()方法中,我们对标记的点击事件进行了响应,当点击的标记是defaultMarker时,会弹出一个文本提示"DefaultMarker"。 通过这段代码,我们可以看到高德地图API的使用方式相对比较简单,而且对地图和标记的操作也相对比较直观,使用起来更加舒适。相比之下,与百度地图API相比,高德地图API在代码的编写和功能的实现上更加便捷和灵活。因此,如果在Android应用中需要集成地图功能,推荐使用高德地图API。