2. 引入地图

来源:互联网 发布:淘宝新店出售 编辑:程序博客网 时间:2024/06/16 09:06

1. 在布局xml文件中添加地图控件MapView

<com.amap.api.maps.MapView    android:id="@+id/map"    android:layout_width="match_parent"    android:layout_height="match_parent"/>

2. 在项目中使用地图的时候需要注意,需要合理的管理地图生命周期

public class MainActivity extends AppCompatActivity {    MapView mMapView = null;    AMap aMap = null;//初始化地图控制器对象    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        //获取地图控件引用        mMapView = (MapView) findViewById(R.id.map);        //在activity执行onCreate时执行mMapView.onCreate(savedInstanceState),创建地图        mMapView.onCreate(savedInstanceState);        if (aMap == null) {            aMap = mMapView.getMap();        }    }    @Override    protected void onDestroy() {        super.onDestroy();        //在activity执行onDestroy时执行mMapView.onDestroy(),销毁地图        mMapView.onDestroy();    }    @Override    protected void onResume() {        super.onResume();        //在activity执行onResume时执行mMapView.onResume (),重新绘制加载地图        mMapView.onResume();    }    @Override    protected void onPause() {        super.onPause();        //在activity执行onPause时执行mMapView.onPause (),暂停地图的绘制        mMapView.onPause();    }    @Override    protected void onSaveInstanceState(Bundle outState) {        super.onSaveInstanceState(outState);        //在activity执行onSaveInstanceState时执行mMapView.onSaveInstanceState (outState),保存地图当前的状态        mMapView.onSaveInstanceState(outState);    }}

如果以上步骤没出错的话,运行就能看到高德地图了。

这里写图片描述

说明:

  1. AMap 类是地图的控制器类,用来操作地图。它所承载的工作包括:地图图层切换(如卫星图、黑夜地图)、改变地图状态(地图旋转角度、俯仰角、中心点坐标和缩放级别)、添加点标记(Marker)、绘制几何图形(Polyline、Polygon、Circle)、各类事件监听(点击、手势等)等,AMap 是地图 SDK 最重要的核心类,诸多操作都依赖它完成。

  2. MapView 是 AndroidView 类的一个子类, 用于在 Android View 中放置地图。 MapView 是地图容器。