如何获取地图上点击位置的地理位置?

3

我正在进行一些在Android地图活动中的数学计算,我需要找到用户在地图上点击的GeoPoint的位置。我知道我需要使用onTouch事件处理程序。目前它看起来是这样的:

@Override
public boolean onTouch(View v, MotionEvent event) {

    int action = event.getAction();

    if(action == MotionEvent.ACTION_DOWN)
    {
        GeoPoint pGoal = mapView.getProjection().fromPixels(
                (int) event.getX(),
                (int) event.getY());

        DisplayInfoMessage("The screen has been touched!" + event.getX() + " AND " + event.getY() + "Latitude: "+ pGoal.getLatitudeE6());   // only for displaying test popup

    }
    super.onTouchEvent(event);

    return true;        

}  

但是它并不做我想要的事情。任何帮助或提示都将不胜感激!


1
抱歉,我刚刚自己回答了这个问题,答案就是我提供的代码。我将其留在这里,以防其他人需要它。 - Pavel
好的,我们知道它不会做什么,但是你的代码会给你什么回报? - WarrenFaith
实际上,它已经按照我想要的方式运行了,Warren。它根据用户点击的位置给我提供了一个地理点。 - Pavel
1个回答

1

实际上这已经是答案了:

@Override
    public boolean onTouch(View v, MotionEvent event) {

        int action = event.getAction();

        if(action == MotionEvent.ACTION_DOWN)
        {
            GeoPoint pGoal = mapView.getProjection().fromPixels(
                    (int) event.getX(),
                    (int) event.getY());

            DisplayInfoMessage("The screen has been touched!" + event.getX() + " AND " + event.getY() + "Latitude: "+ pGoal.getLatitudeE6());   // only for displaying test popup

        }
        super.onTouchEvent(event);

        return true;        

    }  

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接