百度地图加强_覆盖物_TextOverlay
1、TextOverlay extends Overlay 文字标注管理类 可以向地图添加一个或多个文字标注. 添加文字标注的一般流程: ② TextItem 单个文字数据表示 TextItem存储的文字数据可能过TextOverlay添加到MapView中 |
核心代码: package cn.zengfansheng.mybaidumap.overlay;
import java.util.List;
import android.os.Bundle;
import cn.zengfansheng.mybaidumap.BaseActivity;
import com.baidu.mapapi.map.Overlay;
import com.baidu.mapapi.map.Symbol;
import com.baidu.mapapi.map.Symbol.Color;
import com.baidu.mapapi.map.TextItem;
import com.baidu.mapapi.map.TextOverlay;
/**
* 画文本覆盖物
*/
public class TextOverlayDemo extends BaseActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
addTextOverlayData();
}
/**
* 添加TextOverlay覆盖层
*/
private void addTextOverlayData() {
// 添加文字标注的一般流程:
// 1. 用TextItem准备文字数据
// 2. 创建TextOverlay,调用 addText(TextItem) 接口添加文字.
// 3. 调用MapView.getOverlays().add()方法添加overlay到mapview中。
// 4. 调用MapView.refresh() 使Overlay生效。
// 1、获取MapView中的Overlay集合
List<Overlay> overlays = mMapView.getOverlays();
// 2、在集合中添加要显示的文本内容
// 2-1用TextItem准备文字数据
TextOverlay overlay = new TextOverlay(mMapView);
TextItem textItem = new TextItem();
textItem.text = "小胜的百度地图";
textItem.fontSize = 30;
textItem.fontColor = getColor();
textItem.pt = geoPoint;
// 2-2、创建TextOverlay,调用 addText(TextItem) 接口添加文字.
overlay.addText(textItem);
overlays.add(overlay);
// 3、刷新界面
// 调用MapView.refresh() 使Overlay生效。
mMapView.refresh();
}
/**
* 获取颜色
* @return
*/
private Color getColor() {
Symbol.Color color = new Symbol().new Color();// 颜色
color.red = 255;
color.green = 0;
color.blue = 0;
color.alpha = 100;// 透明度
return color;
}
} |
结果: |
|
|