我正在使用android MapView
我希望在平移地图视图时触发某个事件,如果用户正在平移它,则应该在平移集结束时触发
我需要进行一次http调用,根据用户目前在平移结束时的地图视图来提取一些数据,这就是我需要收听平移结束事件的原因
答案 0 :(得分: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);
}