通过将另一图像的像素设置为其位置坐标来覆盖图像

时间:2012-09-07 13:02:40

标签: android android-layout bitmap

我是使用Android的Canvas和Bitmap区域的新手。

我正在为我的大学开发一个地图导航器应用程序。我不必使用谷歌地图。相反,我将使用目标位置图的图像,例如我的大学。

现在当一个人搜索某个地方时,图像应该在该地方显示一个标记,该标记应该临时附加到图像上,这样当地图(图像)被缩放或向上/向下滑动时,标记也应该变焦并且移动图像。

它甚至可能吗?

我正在寻找的是在图像上覆盖该标记并附加到该图像上的方法,以便在缩放或滑动时它可以与图像一起移动。

1 个答案:

答案 0 :(得分:0)

如果您有2张图片(尺寸相同或不相同,则取决于您),您想要将一张图片叠加到另一张图片上,您可以按以下步骤操作:

// 2 bitmap images are : Bitmap image1, image2. You know how to get it right?
image1 = image1.copy(Config.ARGB_8888, true);
image2 = image2.copy(config.ARGB_8888, true);

//Get color at the pixel (0,0)
int color = image2.getPixel(0,0);
//Set the color of pixel (0,0) of image2 to same color with pixel (0,0) of image 1
image2.setPixel(0,0,color);

请注意,2图像必须具有相同的配置!!

如果您想在地图中绘制它:

//Your Bitmap map must config like above
Canvas canvas = new Canvas(map);
Paint paint = new Paint();
paint.setColor(Color.RED);
paint.setAntiAlias(true);
// Draw yourMakerBitmap from pixel(0,0) of your map
canvas.drawBitmap(yourMakerBitmap, 0, 0, paint);

致电canvas.drawBitmap(...)后,您的mapmaker覆盖map。现在,您可以使用maker新的{{1}}来完成您喜欢的任务!