首先,先看一下效果图吧。
Marker应该在添加的时候不是什么大问题,直接添加就可以。下面是添加Marker的代码。注意,我辨别Marker为了方便用的是title,大家可以用bundle来存储传值。
OverlayOptions option = new MarkerOptions() .position(lspoint) .animateType(MarkerOptions.MarkerAnimateType.none) .title(mad + "") .anchor(0.5f, 1.0f) .icon(descriptor) .draggable(false);//marker是否可拖拽
这是添加最普通的Marker。下一篇博客将着重说一下覆盖物。
添加完Marker,就应该写出他的点击事件,然后在点击的时候弹出InfoWindow。废话不多说,看代码。
mBaiduMap.setOnMarkerClickListener(new BaiduMap.OnMarkerClickListener() { @Override public boolean onMarkerClick(final Marker marker) { View view = View.inflate(context, R.layout.activity_map_info, null); TextView xiugai = view.findViewById(R.id.map_tv_xiugai); TextView yidong = view.findViewById(R.id.map_tv_yidong); TextView shanchu = view.findViewById(R.id.map_tv_shanchu); TextView quxiao = view.findViewById(R.id.map_tv_quxiao); TextView kance = view.findViewById(R.id.map_tv_kance); final InfoWindow mInfoWindow = new InfoWindow(view, marker.getPosition(), -47); mBaiduMap.showInfoWindow(mInfoWindow); kance.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { //关闭InfoWindow mBaiduMap.hideInfoWindow(); } }); } }
我在这是自己写的布局,大家可以自己任意定义。好嘞,就这样。下一篇,百度地图的所有覆盖物