onCreate方法中添加 :
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); mapView.onCreate(savedInstanceState);//mapView為高德地圖 MapView //AMap是地圖對象 aMap = mapView.getMap();//得到AMap對象 latitude 維度 longitude 精度 經緯度設置成自己的經緯度即可 CameraPosition cameraPosition = new CameraPosition(new LatLng(this.latitude, this.longitude), 15, 0, 30); CameraUpdate cameraUpdate = CameraUpdateFactory.newCameraPosition(cameraPosition); aMap.moveCamera(cameraUpdate);
//添加標注 addMarkers(); }
添加標注(marker)
/** * 添加標注 */ private void addMarkers() { MarkerOptions markerOptions = new MarkerOptions(); markerOptions.anchor(1.3f, 1.5f);//點標記的錨點 Bitmap bitmap = BitmapFactory.decodeResource(getResources(), R.mipmap.icon_map_add); markerOptions.icon(BitmapDescriptorFactory .fromBitmap(bitmap)); markerOptions.position(new LatLng(latitude, longitude)); Marker growMarker = aMap.addMarker(markerOptions); growMarker.setClickable(true); //marker 設置是否可點擊 startGrowAnimation(growMarker); growMarker.showInfoWindow(); }
添加標注的生長動畫效果:
private void startGrowAnimation(Marker marker) { if (marker != null) { Animation animation = new ScaleAnimation(0, 1, 0, 1); animation.setInterpolator(new LinearInterpolator()); //整個移動所需要的時間 animation.setDuration(1000); animation.setFillMode(1);//動畫保存之前的狀態為1 之后為0 //設置動畫 marker.setAnimation(animation); //開始動畫 marker.startAnimation(); marker.showInfoWindow(); } }
最后onDestyoy銷毀:
@Override protected void onDestroy() { super.onDestroy(); mapView.onDestroy(); }