在下面的图片(来自北极星)中,您可以在MapView的右上角看到一个“定位”ImageButton。
我有一个定制的(一个ImageView),并处理自己的点击。
现在,当用户拖动地图,然后(在拖动期间)单击“定位”按钮,在地图停止移动之前,它什么也不做。
我想要完成的是阻止地图滚动.
下面是我尝试过的东西:mMap.getController().stopAnimation(false);,但不去。
我知道我有这些功能,也许它们会互相干扰?
@Override
public boolean onTouch(View view, MotionEvent event) {
// Disables multi-touch (zoom in/out)
if (event.getPointerCount() > 1) {
return true;
}
// Get the map if a drag is done
if (event.getAction() == MotionEvent.ACTION_UP) {
// ...
}
// Disables double-tap
return mGestureDetector.onTouchEvent(event);
}
private class GestureListener extends GestureDetector.SimpleOnGestureListener {
@Override
public boolean onDoubleTap(MotionEvent event) {
return true;
}
}看来我不是唯一一个..。
发布于 2012-10-31 15:09:10
发布于 2012-10-31 15:38:47
您可以在任何情况下禁用用户跟踪按钮:有这样的方法:
/**
* Enable/disable user tracking on this {@link PolarisMapView}.
*
* @param enabled True if user tracking is enabled, false otherwise.
*/
public void setUserTrackingButtonEnabled(boolean enabled) {此方法附加一个侦听器,用于根据用户位置对视图进行中心设置:
private final OnClickListener mOnUserTrackingButtonClickListener = new OnClickListener() {
@Override
public void onClick(View v) {
MapViewUtils.smoothCenterOnUserLocation(PolarisMapView.this, mMyLocationOverlay, R.string.polaris__unable_to_locate_you);
}
};https://stackoverflow.com/questions/13160970
复制相似问题