0

我有一个带有 ViewSwitcher 的应用程序,它有一个 MapView (v1) 和另一个 View,并且使用 GestureDetector 我可以检测到双击并在两个视图之间切换。

现在我正在尝试将应用程序切换到新的Google Maps Android API V2,我遇到的问题是 MapView 上设置的 GestureDetector 不再对双击做出反应,而是地图正在放大。有谁知道如何改变它行为?

我正在使用原始MapView类,而不是 Map 片段。

4

2 回答 2

2

好的,我现在找到了方法。我必须创建一个子类MapView(实际上是 a ViewGroup)并interceptTouchEvent()在那里实现以检测和捕获双击。

此处详细解释了这是如何实现的:Double Tap -> Zoom on Android MapView?

于 2013-01-07T13:35:40.640 回答
1

据我所知(并根据:http: //developer.android.com/reference/com/google/android/gms/maps/GoogleMap.html),您可以设置为GoogleMap对象(也可以设置为MapView)单击和长按监听器。所以我认为你不能设置双击监听器。

但是你可以试试这个:

GoogleMap map=mapView.getMap();
map.getUiSettings().setZoomGesturesEnabled(false);

也许它会对您的 GestureDetector 做出反应。

于 2013-01-07T12:28:53.817 回答