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();
熱點內容