问题
How can you disable pinch or multitouch functionality in an Android MapView?
回答1:
It took me a little time but I have a solution for this. What I did is stop the event propagation if more than one finger is touching the screen.
mapView.setOnTouchListener(new OnTouchListener() {
public boolean onTouch(View v, MotionEvent event) {
if(event.getPointerCount() > 1) {
return true;
}
return false;
}
});
回答2:
Disable all Gestures:
mapView.getMap().getUiSettings().setAllGesturesEnabled(false);
Disable just Zoom
mapView.getMap().getUiSettings().setZoomControlsEnabled(false);
回答3:
final UiSettings uiSettings = map.getUiSettings();
uiSettings.setZoomControlsEnabled(true);
uiSettings.setZoomGesturesEnabled(false);
回答4:
Here is a little trick to fool pinch zoom :P (set a Zoom level and set the same level as maxZoom
var myOptions1 = {
//Coordinates of the map's center
center: new google.maps.LatLng(152,125),
//Zoom level
zoom: 15, // or any level of zoom you want to preload your map
maxZoom:15 // same as the zoom value makes sure the map is not zoomed,
//Other options are as per your requirements
来源:https://stackoverflow.com/questions/4626028/how-to-disable-pinch-in-android-mapview