2013-02-13 46 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