根据覆盖物自动缩放画面比例

本文介绍如何使用百度地图SDK实现地图加载,并通过自定义覆盖物管理器添加多个标记到地图上。具体步骤包括:实现OnMapLoadedCallback接口以监听地图加载完成事件;创建并配置MyOverlayManager类来管理覆盖物;以及在地图加载完成后添加预设位置的标记。

1.地图显示界面实现OnMapLoadedCallback

2.在onCreate()添加

mBaiduMap.setOnMapLoadedCallback(this);

3.写个MyOverlayManager 实现OverlayManager

public class MyOverlayManager extends OverlayManager {
private List<OverlayOptions> optionsList = new ArrayList<OverlayOptions>();
public MyOverlayManager(BaiduMap arg0) {
super(arg0);
// TODO Auto-generated constructor stub
}
@Override
public boolean onMarkerClick(Marker arg0) {
return false;
}
@Override
public List<OverlayOptions> getOverlayOptions() {
// TODO Auto-generated method stub
return optionsList;
}
 public void setData(List<OverlayOptions> optionsList) {
       this.optionsList = optionsList;
   }
}

4.重写onMapLoaded()

@Override
public void onMapLoaded() {
MyOverlayManager manager= new MyOverlayManager(mBaiduMap);
List<OverlayOptions> list = new ArrayList<OverlayOptions>();
list.add(getOptions(new LatLng(24.431375, 117.119376)));
list.add(getOptions(new LatLng(24.431275, 117.119276)));
list.add(getOptions(new LatLng(24.431475, 117.119476)));
list.add(getOptions(new LatLng(24.431175, 117.119176)));
list.add(getOptions(new LatLng(24.431575, 117.119576)));

manager.setData(list);
manager.addToMap();
manager.zoomToSpan();
}

public OverlayOptions getOptions(LatLng latLng) {
OverlayOptions options1 = new MarkerOptions().position(latLng)
.icon(bdB).title("");
return options1;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值