2013-02-13 47 views
1

我听到这样的人喜欢图,所以我花时间来绘制一个:d映射对于不同的屏幕坐标尺寸

我需要设计大致如下所示的活动:

enter image description here

该地图只是一个城市,地形等图像文件。用户可以在x-coord和y-coord文本框中输入值,并且当它们都输入时,三角形图标(也是图像文件)将出现在地图顶部,相对于地图上的坐标。所有地图的坐标的最小值,最大值固定为0,0至10000,10000。用户可以点击三角形图标(按钮),它只是把他们带到另一个活动。

什么是设计如上所述的明智方法?

就我而言,有几件事情,我需要考虑:

1)相对于屏幕尺寸变换坐标。一个明显的解决方法是使用absolutelayout并使用像素来定位三角形图标,但这种解决方案由于显而易见的原因是可怕的。

2)在地图上放置一个按钮(图像文件)。在玩过一堆布局之后,我无法弄清楚如何通过Java来做到这一点。

我只是寻找一个非常简单的指导,只是为了让自己走向正确的方向。

回答

2

我会使用SurfaceView。你可以在onDraw方法中绘制任何东西。你会得到一个Canvas对象来绘制,所以它不应该很难转换你的坐标并做你想做的事情。

看看这个教程:

http://www.mindfiresolutions.com/Using-Surface-View-for-Android-1659.php

+0

好吧,这可能细心照顾的映射部分。如果我要将图像放置在曲面视图中,是否可以在所需位置的图像顶部创建图像按钮? – l46kok 2013-02-13 11:55:38

+0

是的,但我宁愿画在画布上。你可以在给定的位置捕捉​​触摸事件,看看是否有位图;) – 2013-02-13 11:58:18

+0

在位图顶部绘制按钮http://stackoverflow.com/questions/13842191/android-drawing-bitmap-and-button-on -canvas按XY-位置/ 13842376#13842376 – n3utrino 2013-02-13 12:05:16