2012-08-06 62 views
4

我試圖將屏幕座標轉換爲android mapview中的地理座標。我需要在屏幕中心顯示一個標記(mapview填充在窗口中)。所以我嘗試使用display metrics getWidth()和getHeight()方法獲取中心座標,並使用mapView.getProjection()。fromPixels(height/2,width/2)將其轉換爲geoppo點。但它似乎給了錯誤的結果。我該怎麼辦?如何將屏幕座標轉換爲android中的位置點

回答

5

你傳遞的高度和寬度的說法是錯誤的改變

mapView.getProjection().fromPixels(width/2,height/2);

試試這個代碼

Projection proj = mapview.getProjection(); 
GeoPoint proj.fromPixels(int x, int y) ; 

在這裏,你必須通過X,Y座標,它會轉換到GeoPoint,您也可以從GeoPoint保留這個像素也從這個對象的像素

Point p = new Point(); 
proj.toPixels(GeoPoint in, android.graphics.Point out) 

檢查此鏈接瞭解更多信息

https://developers.google.com/maps/documentation/android/reference/com/google/android/maps/Projection

0

你是否考慮到notificationBar大小?也許還有appBar

你想知道的是寬度和高度的MapView,然後得到投影:)

相關問題