Android 如何使dispatchTouchEvent更灵活?(我无法移动地图)
我使用这段代码来获得我在adroid中使用google maps视图点击的点的坐标Android 如何使dispatchTouchEvent更灵活?(我无法移动地图),android,google-maps,android-maps,Android,Google Maps,Android Maps,我使用这段代码来获得我在adroid中使用google maps视图点击的点的坐标 @Override public boolean dispatchTouchEvent(MotionEvent event) { if (event.getAction() == 1) { GeoPoint p = mapView.getProjection().fromPixels( (int) event.getX(),
@Override
public boolean dispatchTouchEvent(MotionEvent event)
{
if (event.getAction() == 1) {
GeoPoint p = mapView.getProjection().fromPixels(
(int) event.getX(),
(int) event.getY());
// send the intent from here to your next activity with the GeoPoint coords.
Toast.makeText(getBaseContext(),
p.getLatitudeE6() / 1E6 + "," +
p.getLongitudeE6() /1E6 ,
Toast.LENGTH_SHORT).show();
}
return false;
}
它工作得很好,每次我触摸地图时,它都会显示精确的坐标——但现在我无法在地图上滚动,因为当我试图“抓住”地图并滚动到一边时,我得到的都是坐标
如何修复它
我有一个想法,可能当我点击两次时,它会得到我的坐标,但我希望能够“捕捉”地图并将其滚动。也许最简单的方法是在地图视图中添加一个按钮,在两种不同的行为之间切换。按下按钮时会显示坐标,释放时地图会移动 您只需要在“dispatchTouchEvent”方法中测试按钮状态 祝你好运