高德地图已用API整理
常用类
初始化相关类
-
MapView:
onCreate onResume onPause onSaveInstanceState onDestory
-
获取Amap
if (amap == null) { amap = mMapView.getMap(); }
-
Amap 设置地图德图层信息
amap.setMapType(AMap.MAP_TYPE_NAVI);
坐标相关类
- Latlng(封装经纬度) 注意纬度在前、经度在后
linkedMap.put("联想大厦", new LatLng(40.042737, 116.309884));
- LatlngBounds 经纬度范围,通过东南角、西北角设置一个范围
LatLngBounds.Builder builder = new LatLngBounds.Builder(); LatLngBounds build = builder.include(startLatLng).include(endLatLng).build(); amap.moveCamera(CameraUpdateFactory.newLatLngBounds(build,150));
标点相关类
-
MarkOption-标记点相关类
- 标记地图相关点
MarkerOptions markerOptions = new MarkerOptions(); markerOptions.position(latLng).icon(BitmapDescriptorFactory .fromBitmap(BitmapFactory.decodeResource(getResources(),R.mipmap.mark))) .title("什刹海");
aMap.addMarker(markerOptions);
- 移除地图相关点
Marker marker = amap.addMarker(new MarkerOptions().position(latLng).title("停车场").icon(BitmapDescriptorFactory. fromBitmap(BitmapFactory.decodeResource(getResources(), PARKINFO[i])))); marker.remove();
-
核心类:CamreraUpdateFactory--视角更新工厂类,更新视角,
amap.moveCamera(CameraUpdateFactory.newLatLngZoom(latLng,13));
-
CameraPosition -用以封装视角属性(经纬度、视角缩放级别、缩放级别、视角角度)
amap.moveCamera(CameraUpdateFactory.newCameraPosition(new CameraPosition(latLng1, 10,0,0)));
标线相关类
-
Polyline
- 地图的线的绘制
Polyline polyline = amap.addPolyline(new PolylineOptions().addAll(latlngs).color(Color.rgb(0, 120, 215)).width(15f));
- 地图线的移除
handler.postDelayed(new Runnable() { @Override public void run() { polyline.remove(); } }, 4000);
计算两点之间的距离
AMapUtils.calculateLineDistance(LatLng latlng,LatLng latlng1)