文字(text)在地图上也是一种覆盖物,由text类定义。文字覆盖物的绘制通过textoptions类来设置。示例代码如下:
//文字覆盖物位置坐标latlng lltext =newlatlng(39.86923,116.397428);//构建textoptions对象overlayoptions mtextoptions =newtextoptions().text("百度地图sdk")//文字内容.bgcolor(0xaaffff00)//背景色.fontsize(24)//字号.fontcolor(0xffff00ff)//文字颜色.rotate(-30)//旋转角度.position(lltext);//在地图上显示文字覆盖物overlay mtext = mbaidumap.addoverlay(mtextoptions);
运行结果如下:
下面简述两种构造infowindow的方法。
使用view构造infowindow
//用来构造infowindow的buttonbutton button =newbutton(getapplicationcontext());button.setbackgroundresource(r.drawable.popup);button.settext("infowindow");//构造infowindow//point 描述的位置点//-100 infowindow相对于point在y轴的偏移量minfowindow =newinfowindow(button, point,-100);//使infowindow生效mbaidumap.showinfowindow(minfowindow);
效果如图:
使用bitmpdescriptor构造infowindow
oninfowindowclicklistener :infowindow被点击时的回调接口,通过重写oninfowindowclick方法来实现响应点击事件,在使用bitmapdescriptor来构造infowindow时需要传入一个oninfowindowclicklistener对象。
//用来构造infowindowbitmapdescriptor mbitmap =bitmapdescriptorfactory.fromresource(r.drawable.popup);//响应点击的oninfowindowclicklistenerinfowindow.oninfowindowclicklistener listener =newinfowindow.oninfowindowclicklistener(){@overridepublicvoidoninfowindowclick(){toast.maketext(markerdemo.this,"click on infowindow",toast.length_long).show();}};//构造infowindow//point 描述的位置点//-100 infowindow相对于point在y轴的偏移量minfowindow =newinfowindow(mbitmap, point,-100, listener);//使infowindow生效mbaidumap.showinfowindow(minfowindow);
显示效果及点击事件效果展示如图:
上一篇
下一篇
本篇文章对您是否有帮助?