我以前为MapView做过这项工作,它非常简单,因为有预定义的方法,比如onInterceptTouchEvent
或GestureListeners
等。
有人在地图片段中尝试过双击或双击缩放功能吗?我谷歌了一下,但仍然找不到任何解决方案。
我刚刚开始添加UiSetting只getMap(). getUiSetting(). setZoomGesturesEnabed(true);
它将由setOnMapClickListener()
的帮助来实现,还是有什么东西来处理地图片段的双击事件的手势?
注意:这个问题纯粹是关于MapFragment的,与MapView无关,后者已经回答了双击:在Android MapView上缩放?
编辑我在布局中使用的MapFragment:
<ViewFlipper
android:id="@+id/viewFlipper"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_below="@id/noItemsText"
android:layout_centerInParent="true"
android:layout_gravity="center"
android:addStatesFromChildren="true"
android:background="@android:color/transparent"
android:gravity="center">
<ListView
android:id="@+id/storesListView"
style="@style/Fill"
android:background="@android:color/transparent"
android:cacheColorHint="#00000000" />
<fragment
android:id="@+id/mapview"
android:name="com.google.android.gms.maps.MapFragment"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</ViewFlipper>
该类是一个控制器,用于扩展Activity而不是AppCompactActivity的Activity。
我还在地图中添加了标记聚类。
类侧:
public class StoreFinderController extends BeeonicsControllerBase implements OnMapReadyCallback,
ClusterManager.OnClusterItemInfoWindowClickListener<AllClusterItems>,ClusterManager.OnClusterClickListener<AllClusterItems> {
地图准备:
@Override
public void onMapReady(GoogleMap googleMap) {
/*better to work with our map :)*/
this.googleMap = googleMap;
mClusterManager = new CustomClusterManager<AllClusterItems>(getActivity(), getMap());
getMap().setOnCameraIdleListener(mClusterManager);
getMap().setOnInfoWindowClickListener(mClusterManager);
getMap().setOnMarkerClickListener(mClusterManager);
mClusterManager.setOnClusterItemInfoWindowClickListener(this);
mClusterManager.setOnClusterClickListener(this);
/*map additional settings*/
setUpMap();
//setUpGoogleMap();
//readItems();
}
在setUpMap中,我只是在对象之间传输一些数据。
我在这里和这里尝试了所有可能的解决方案,他们通过触摸事件给出了处理双击的其他方法。但不幸的是,我什么都没用。
因此,我以预定义的onMapClickListener()
结束,它只需单击地图即可调用。我将解决方案粘贴到下面:
getMap().setOnMapClickListener(new GoogleMap.OnMapClickListener() {
@Override
public void onMapClick(LatLng latLng) {
getMap().animateCamera(CameraUpdateFactory.zoomIn());
}
});
无论如何,谢谢卡兰·默的帮助。
您是否尝试将侦听器设置为mapready()回拨?然后设定
mMap。getUiSettings()。设置ZoomGeturesEnabled(真);
@Override
public void onMapReady(GoogleMap googleMap) {
mMap = googleMap;
mMap.setOnMapClickListener(new GoogleMap.OnMapClickListener() {
@Override
public void onMapClick(LatLng latLng) {
try {
// mMap.clear();
mMap.getUiSettings().setZoomGesturesEnabled(true);
}
}
本文向大家介绍js实现双击图片放大单击缩小的方法,包括了js实现双击图片放大单击缩小的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了js实现双击图片放大单击缩小的方法。分享给大家供大家参考。具体实现方法如下: 希望本文所述对大家的javascript程序设计有所帮助。
本文向大家介绍Android 图片处理缩放功能,包括了Android 图片处理缩放功能的使用技巧和注意事项,需要的朋友参考一下 PS:在开发中我们会遇到一些图片处理问题,比如说缓存图片了、限制图片大小了、查看图片了等。上一篇文章介绍了图片的全景效果查看,今天介绍一个图片缩放,我们如果有时间的话,可以自己写一个属于自己的库,里面会用到view的按压、事件分发、手势等一些知识,如果没有时间或者不会其他
我希望能够覆盖 doubleTap 运动事件,使其不执行任何操作,而不是缩放和取消缩放。我在另一篇文章中读到,有人能够通过创建自定义WebView类并覆盖其中的内容来使其工作,但是无论如何,我似乎都无法在DoubleTap上启动,并且无论如何双击缩放仍在发生。 到目前为止,我的进展是我可以正确触发onDown事件(我在调试输出窗口中看到了msg)。 这是我的代码,在我帖子的最底部有一个链接,指向我
问题内容: 经过一番工作后,我的路线申请工作正常。我唯一想添加的就是双击放大功能,但我不知道如何操作。 你能给我一个提示吗? 问题答案: 实现GestureListener来接收doubleTap事件。
地图缩放调整方法:设置-实验室(可参考10.1)-测地图缩放 将缩放比例调整好后,重新启动外业精灵即可展示修改后的缩放效果。
使 UIScrollView 中的图片支持手势缩放。双击图片可以放大图片,或者pinch(捏合)手势可以缩放图片。基本原理是UIScrollView中嵌套UIScrollView,然后再嵌套UIImageView,可对UIImageView进行伸缩。 [Code4App.com]