gpt4 book ai didi

Android:如何制作一个可点击的 map 图像,每个国家都有不同的 Action ?

转载 作者:IT王子 更新时间:2023-10-28 23:29:39 28 4
gpt4 key购买 nike

我需要显示一张漂亮的欧洲 map 图像,并且我希望我的应用能够,例如当用户单击每个国家/地区时,会显示不同的 Activity - map 上的每个国家/地区都需要具有不同的 onClickListener(或等效项)。

本质上,当用户点击法国而不是西类牙时,我需要能够调用不同的函数,如下所示: http://commons.wikimedia.org/wiki/File:Blank_map_of_Europe_cropped.svg

在 Android 上我最好如何处理?

我有一些想法,但我可能忽略了一些简单的方法。

非常感谢!

干杯,r3mo

最佳答案

这是我解决类似问题的方法。

首先复制您要用作图像映射的图像并为每个部分着色。不用说,每个部分都有不同的颜色:D。然后在您的布局中创建两个 ImageView。将第一个的背景设置为要在屏幕上显示的图像,将第二个的背景设置为一个彩色。

然后将第二个 ImageView 的可见性设置为不可见。如果此时运行该程序,您应该会看到要显示的图像。然后使用 OnTouch 监听器并获取您触摸的像素的颜色。颜色将与彩色图像的颜色相对应。

下面的 getColour 方法需要传递触摸事件的 x 和 y 坐标。 R.id.img2 是不可见的图像。

private int getColour( int x, int y)
{
ImageView img = (ImageView) findViewById(R.id.img2);
img.setDrawingCacheEnabled(true);
Bitmap hotspots=Bitmap.createBitmap(img.getDrawingCache());
img.setDrawingCacheEnabled(false);
return hotspots.getPixel(x, y);
}

希望这对您有所帮助:)。

关于Android:如何制作一个可点击的 map 图像,每个国家都有不同的 Action ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3961071/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com