android百度覆盖物
发布时间: 2023-05-09 20:59:53
A. android百度地图api3.0 清除覆盖物的方法
mBaiMap.clear();
或者是
Marker
marker
=
(Marker)mBaiMap.addOverlay(option);
marker.remove();
你的采纳是我前进的动力,
记得好评和采纳,答题不易,互相帮助,
手机提问的朋友在客户端右上角评价点(满意)即可.
如果你认可我的回答,请及时点击(采纳为满意回答)按钮!!
B. android 百度地图如何在覆盖物上绘制文字,而且文字不重叠。如图中B的效果。
这位朋友,你的问题我也碰到了,而且机缘巧合,在搜到你的问题后,我正好解决了此问题。在此,我奉上我的解决方法。
java"> /**由于时间关系,我暂时还不能提供demo,以后我写了,我会补充下载地址
*另外,如果你碰上这问题比较急的话,可以直接加我QQ,也就是我网络的ID*/
/**
*通常,我们会在继承自ItemizedOverlay<OverlayItem>的构造器里运用for循环
*这样使用的最终效果就是图A
*因为所有气泡都绘制在一个图层上,气泡不断增加,可是图层仅仅只有一个。
**/
publicMyOverItemT(Drawablemarker,Contextcontext,
List<DriverLocationInfo>data){//Drawablemarker,
super(boundCenterBottom(marker)){
for(inti=0;i<data.size();i++){
DriverLocationInfodli=data.get(i);
GeoPointp1=newGeoPoint((int)(Double.parseDouble(dli
.getDriverLat())*1E6),(int)(Double.parseDouble(dli
.getDriverLon())*1E6));
OverlayItemot=newOverlayItem(p1,dli.getDriverName(),
dli.getDriverTel());
mGeoList.add(ot);
}
populate();//镟存柊
}
/**
*修改后,构造器内,只添加一个气泡,但仍将它添加至mGelList中
**/
publicMyOverItemT(Drawablemarker,Contextcontext,
DriverLocationInfodInfo){
super(boundCenterBottom(marker));
this.dInfo=dInfo;
GeoPointp1=newGeoPoint((int)(Double.parseDouble(dInfo
.getDriverLat())*1E6),(int)(Double.parseDouble(dInfo
.getDriverLon())*1E6));
OverlayItemot=newOverlayItem(p1,dInfo.getDriverName(),
dInfo.getDriverTel());
mGeoList.add(ot);
populate();//更新
}
/**
*注意,这个for循环其实是在MyOverItemT之外的,我放在这里是因为代码太多了,就只挑一部分来解释
*如果,你对这个for循环使用时机感到困惑,我建议,你在BMapManager和BMapView初始化后使用
*一般写在oncreate内。
**/
for(Objectitem:list){
driverOverlay=newMyOverItemT(marker,getParent(),item);
//注意这一句,核心
//每有一个包含GeoPoint信息的item,就重新绘制一个图层,放心,只要不clear或remove,
//绘制好的图层就会消失,而是出现图B的效果
mMapView.getOverlays().add(driverOverlay);
}
/**
*最后,我再提供一下删除图层的代码
**/
mMapView.getOverlays().clear();
mMapView.invalidate();
热点内容