0

我正在使用安卓MapView

我想在平移地图视图时触发一些事件,如果用户正在平移它应该在平移集结束时触发

我需要进行 http 调用以根据用户当前在平移结束时的地图视图提取一些数据,这就是为什么我需要收听平移结束事件

4

1 回答 1

1

没有内置方法可以获取此类事件。但是你可以试试MapView Overlay Manager来听一些手势。或者编写您自己的类从 MapView 扩展以捕获用户的触摸事件。

编辑:

要扩展 Mapview,请覆盖 onTouchEvent 方法。

public boolean onTouchEvent(MotionEvent ev) {
    if (ev.getAction() == MotionEvent.ACTION_UP) {
        GeoPoint centerGeoPoint = this.getMapCenter();
        if (currentCenter == null || 
                (currentCenter.getLatitudeE6() != centerGeoPoint.getLatitudeE6()) ||
                (currentCenter.getLongitudeE6() != centerGeoPoint.getLongitudeE6()) ) {
            firePanEvent(currentCenter, this.getMapCenter());
        }
        currentCenter = this.getMapCenter();
    }
    return super.onTouchEvent(ev);
}
于 2013-03-04T06:32:16.403 回答