packagecom.example.euphemiaxiao.feedback;importandroid.content.Intent;importandroid.os.Bundle;importandroid.support.v7.app.AppCompatActivity;importandroid.view.View;importandroid.widget.Button;importcom.amap.api.maps.AMap;importcom.amap.api.maps.CameraUpdateFactory;importcom.amap.api.maps.MapView;importcom.amap.api.maps.model.BitmapDescriptorFactory;importcom.amap.api.maps.model.LatLng;importcom.amap.api.maps.model.MarkerOptions;public class selectPoint extends AppCompatActivity implementsAMap.OnMapClickListener{privateButton doneSelect;private MapView mMapView = null;private AMap aMap = null;doublelatitude;doublelongtitude;
@Overrideprotected voidonCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);
setContentView(R.layout.activity_select_point);//获取地图控件引用
mMapView =(MapView) findViewById(R.id.map);//在activity执行onCreate时执行mMapView.onCreate(savedInstanceState),创建地图
mMapView.onCreate(savedInstanceState);
init();
doneSelect=(Button)findViewById(R.id.doneSelect);
doneSelect.setOnClickListener(newView.OnClickListener() {
@Overridepublic voidonClick(View v) {
Intent intent= new Intent(selectPoint.this,Feedback.class);
intent.putExtra("latitude",latitude);
intent.putExtra("longtitude",longtitude);
startActivity(intent);
}
});
}private voidinit() {if (aMap == null) {
aMap=mMapView.getMap();
setUpMap();
}
}private voidsetUpMap() {
aMap.showIndoorMap(true);
LatLng latLng= new LatLng(39.92448, 116.518295);
aMap.moveCamera(CameraUpdateFactory.changeLatLng(latLng));//设置中心点
aMap.moveCamera(CameraUpdateFactory.zoomTo(18)); //设置地图可视缩放大小
aMap.setOnMapClickListener(this);
}
@Overrideprotected voidonDestroy() {super.onDestroy();//在activity执行onDestroy时执行mMapView.onDestroy(),销毁地图
mMapView.onDestroy();
}
@Overrideprotected voidonResume() {super.onResume();//在activity执行onResume时执行mMapView.onResume (),重新绘制加载地图
mMapView.onResume();
}
@Overrideprotected voidonPause() {super.onPause();//在activity执行onPause时执行mMapView.onPause (),暂停地图的绘制
mMapView.onPause();
}
@Overrideprotected voidonSaveInstanceState(Bundle outState) {super.onSaveInstanceState(outState);//在activity执行onSaveInstanceState时执行mMapView.onSaveInstanceState (outState),保存地图当前的状态
mMapView.onSaveInstanceState(outState);
}
@Overridepublic voidonMapClick(LatLng latLng) {
aMap.clear();
latitude=latLng.latitude;
longtitude=latLng.longitude;
MarkerOptions markerOptions= newMarkerOptions();
markerOptions.icon(BitmapDescriptorFactory.fromResource(R.drawable.placeholder));
markerOptions.position(latLng);
aMap.addMarker(markerOptions);
aMap.moveCamera(CameraUpdateFactory.changeLatLng(latLng));
}
}