今天用到了百度地图多点标注 再次做个记录
首先当然是去申请秘钥 这个步骤就不说了 大家都知道应该怎么做
下载jar包 下载地址 下载这三个就够用了
之后怎么集成进去我就不说了 下面直接给出代码 别忘定位权限 还有so库的问题
/*
* @创建者 xw_12138
* @创建时间 2018/4/27
* @描述
*/
public class BaiduMapActivity extends AppActivity {
private MapView mMapView;
private HttpDialog mDialog;
private BaiduMap mBaiduMap;
//这是AppActivity抽取方法设置布局
@Override
public void setLayout() {
setContentView(R.layout.act_map);
}
//这是AppActivity抽取方法初始化title
@Override
public void initAll() {
setPageTitle("地图");
setPageTitleBackgroundColor(R.color.color_35495E);
setPageBackVisibility(View.INVISIBLE);
setPageTitleColor(R.color.color_fff);
initView();
}
private void initView() {
mMapView = (MapView) findViewById(R.id.bmapView);
//最好设置一个dialog 因为百度地图绘制你设置的点需要时间
mDialog = new HttpDialog(this);
mDialog.show();
//显示地图 (写完这个 地图就可以显示出来了 并且地图中央是天安门 如果没有请检查代码)
mBaiduMap = mMapView.getMap();
mBaiduMap.setMyLocationEnabled(true);
initDot();
}
/**
* 设置点的位置
*/
private void initDot() {
//地图标记图标
BitmapDescriptor bitmap = BitmapDescriptorFactory
.fromResource(R.mipmap.ic_launcher);
//构建MarkerOption,用于在地图上添加Marker
//创建OverlayOptions的集合
List<OverlayOptions> options = new ArrayList<OverlayOptions>();
//设置坐标点
LatLng point1 = new LatLng(39.92235, 116.380338);
LatLng point2 = new LatLng(39.947246, 116.414977);
//创建OverlayOptions属性
OverlayOptions option1 = new MarkerOptions()
.position(point1)
.icon(bitmap);
OverlayOptions option2 = new MarkerOptions()
.position(point2)
.icon(bitmap);
//将OverlayOptions添加到list
options.add(option1);
options.add(option2);
//在地图上批量添加
mBaiduMap.addOverlays(options);
mDialog.dismiss();
}
@Override
public void onResume() {
super.onResume();
if (null != mMapView)
mMapView.onResume();
}
@Override
public void onPause() {
super.onPause();
if (null != mMapView)
mMapView.onPause();
}
@Override
protected void onDestroy() {
super.onDestroy();
if (null != mMapView)
mMapView.onDestroy();
}
}
然后就能看到效果了