首页 > 其他分享 >MapView Overlay Drawable 的使用

MapView Overlay Drawable 的使用

时间:2023-06-20 17:01:01浏览次数:49  
标签:Drawable Overlay graphics public bmp sXYCoords import MapView android


package org.yexing.mapdemos; 


GraphicOverlay.java 


import android.graphics.Canvas; 
//import android.graphics.Paint; 
//import android.graphics.RectF; 
import android.graphics.drawable.BitmapDrawable; 
import android.graphics.drawable.Drawable; 
import android.view.MotionEvent; 


import com.google.android.maps.Overlay; 
import com.google.android.maps.Point; 


public class GraphicOverlay extends Overlay { 
        BitmapDrawable bmp; 
        static int w, h; 
        Point p; 


        public GraphicOverlay(Drawable d, Point p) { 
                bmp = (BitmapDrawable) d; 
                this.p = p; 
                w = bmp.getIntrinsicWidth(); 
                h = bmp.getIntrinsicHeight(); 
        } 


        public void draw(Canvas canvas, PixelCalculator calculator, boolean 
shadow) { 
                calculator.getPointXY(p, sXYCoords); 
                bmp.setBounds(sXYCoords[0] - w / 2, sXYCoords[1] - h, 
                                sXYCoords[0] + w / 2, sXYCoords[1]); 
                bmp.setAlpha(70); 
                bmp.draw(canvas); 


                /* 
                RectF oval = new RectF(xyCoords[0], xyCoords[1], 
                                xyCoords[0] + 5, xyCoords[1] + 5); 


                Paint paint = new Paint(); 
                paint.setARGB(200, 255, 0, 0); 
                canvas.drawOval(oval, paint); 
                */ 
        } 


        public Point getCenter() { 
                return p; 
        } 


        public boolean dispatchMotionEvent(MotionEvent ev) { 
                return false; 
        } 



}

 在引用的时候把一个activity作为参数传进

public GraphicOverlay(Activity map) 
{ 
    mMap = map; 
    ... 

}

 bmp = mMap.getIcon("name")

Point p = mMap.getCurrentLocation()

或者

nMap = map; 
fav_icon = (BitmapDrawable) 
mMap.getResources().getDrawable(R.drawable.cake);

标签:Drawable,Overlay,graphics,public,bmp,sXYCoords,import,MapView,android
From: https://blog.51cto.com/u_16166892/6523982

相关文章

  • Overlay mount和bind mount
    1.Overlaymount和bindmount都是Linux中用于挂载文件系统的方式,它们的区别如下:目录结构不同:Overlaymount是将多个文件系统合并成一个虚拟文件系统,而bindmount则是将一个目录挂载到另一个目录上。内容来源不同:Overlaymount的文件内容来自于下层文件系统和上层文件系统的合并,......
  • dockers overlay2大坑之 systemctl start docker 卡住不动
    有一个机器里面的docker想改下参数,然后重启结果问题来了,systemctlstartdocker之后等了10分钟一直卡住不动,顿时感觉不对劲了一开始以为参数修改的有问题,修改好几版之后,发现,参数修改错误启动会直接报错,修改的对会卡住后百度一番,以及经过查找之后得出答案dockeroverlay2目录......
  • vant组件Popup 弹出层单独设置 van-overlay和van-popup样式
    <van-popupv-model="showInfoBox"position="top"class="top_">默认情况下会自带灰色蒙版如果一个页面的布局需要调用很多个弹框的话有的弹框不想要这个蒙版背景就需要通过这样设置相当于全局设置了.van-overlay{background-color:transparent;width......
  • iOS 缩放等级 Set the Zoom Level of an MKMapView
    SettheZoomLevelofanMKMapViewhttp://troybrant.net/blog/2010/01/set-the-zoom-level-of-an-mkmapview/IfyouhaveeverbuiltawebapplicationusingtheGoogleMapsAPI,youarelikelyintimatelyfamiliarwiththislineofcode:map.set......
  • docker 的overlayFS 文件系统
    referto:https://juejin.cn/post/7112352737051803684一、overlay相关介绍Docker 底层有三驾马车,Namespace、CGroup 和 UnionFS(联合文件系统),UnionFS 是 Docker 镜像的基础。UnionFS(联合文件系统) 是一种分层、轻量级并且高性能的文件系统,它支持对文件系统的修改作为一......
  • docker overlay2 占用大量磁盘空间
    dockeroverlay2占用大量磁盘空间#进入实际的dockeroverlay2目录#以下是举例:查询到builder-mw容器中,日志量异常(根据实际的服务器查询到目录为准)[root@pdsweb~]#cd/home/docker/overlay2/[root@pdsweboverlay2]#du-h--max-depth=1|grep[GT]5.4G ./7908539d4......
  • 把任意Drawable转换成基于progress填充的drawable
    把任意Drawable转换成基于progress填充的drawable。progress可以是四个方向:from_left,from_top,from_right,from_bottom。FillDrawable的背后是PorterDuffColorFilter//obtainaDrawableobjectfinalDrawabledrawable=getDrawable(...);//initializeboundsdraw......
  • LayerDrawable层叠样式layer-list
    layer-list可以将多个图片按照顺序层叠起来。语法:在drawalbe/drawable-layer.xml中<layer-listxmlns:android="http://schemas.android.com/apk/res/android"><itemandroid:drawable="@android:color/white"/><itemand......
  • 虚拟机下的OpenWrt磁盘Overlay扩容
    方式一:使用新磁盘扩容(推荐)这种方式不仅适用于虚拟机,也适用于裸机安装的OpenWrt系统。给新磁盘分区并格式化对于裸机,可使用USB、SATA等接口添加新硬盘;对于虚拟机,可在虚拟机配置项中添加新虚拟磁盘。以虚拟机为例,我这里添加一个1GB的新虚拟磁盘。添加完成后进入OpenWrt的Shell......
  • 关于Drawable转Bitmap的错误,为0的处理办法
    这个问题困惑我许久,主要是在于给的报错信息误导了我,报错信息如下:后来,我跟飞哥探讨(请教)了一番,得知可能返回的不是0,于是乎我就打印了一个log,来测试一下,发现并不是0,而是-1!!!!如此,我便寻得缘由,点进去方法,看到了这样一个方法:恍然大悟!!!感谢飞哥。......