在android中获取点击地图的坐标

Mig*_*iro 15 android tap map touch coordinates

我正在尝试制作这样的东西:我有一个mapactivity,当用户点击地图时,它会显示该位置的坐标.我已经覆盖了onclick方法,但它甚至没有被调用.任何的想法?

public class MapPoint extends MapActivity implements OnClickListener {

@Override
public void onCreate(Bundle savedInstanceState) {

    super.onCreate(savedInstanceState);
    setContentView(R.layout.mappoints);

    MapView map = (MapView)findViewById(R.id.mapview);
    map.setOnClickListener(this);
    map.setBuiltInZoomControls(true);
    map.getController().setZoom(18);
    map.getController().setCenter(new GeoPoint(39735007, -8827330));


}

@Override
protected boolean isRouteDisplayed() {
    // TODO Auto-generated method stub
    return false;
}

public void onClick(View arg0) {
        Toast.makeText(this, "text", Toast.LENGTH_SHORT);
}
Run Code Online (Sandbox Code Playgroud)

}

Flo*_*Flo 17

请尝试以下方法.

编写一个派生自Overlay类的类并覆盖onTap()方法.然后,您可以将叠加层添加到MapView.甲的GeoPoint对象,表示的点按位置,被传递到的onTap()方法时,你标签某处在地图上.


Com*_*are 7

onClick()这里没有使用.你需要覆盖onTouchEvent().这是一个示例项目,显示使用onTouchEvent()拖放ItemizedOverlay地图引脚.

给定触摸的屏幕坐标,您可以使用Projection(从getProjection()MapView)将其转换为纬度和经度.