我正在尝试使用谷歌地图,例如禁用缩放手势等选项。我在下面的代码中添加了GoogleMapOptions,就像我在网上看到的随机源代码一样。问题是它只是不起作用,我可以将所有缩放控件设置为false,但是当我运行它时似乎没有改变我的应用程序。
private GoogleMap map;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
GoogleMapOptions options = new GoogleMapOptions();
options.zoomGesturesEnabled(false);
MapFragment.newInstance(options);
map = ((MapFragment) getFragmentManager()
.findFragmentById(R.id.map)).getMap();
有人能告诉我我的代码有什么问题吗?
答案 0 :(得分:2)
而不是使用
GoogleMapOptions options = new GoogleMapOptions();
options.zoomGesturesEnabled(false);
MapFragment.newInstance(options);
map = ((MapFragment) getFragmentManager()
.findFragmentById(R.id.map)).getMap();
您可以根据自己的需要获取GoogleMap对象的UISettings并与其一起玩。 例如,如果要禁用缩放手势,只需在getMap()函数后添加:
map.getUiSettings().setZoomGesturesEnabled(false);
同样您也可以禁用默认缩放控件(“+”和“ - ”按钮放大和缩小):
map.getUiSettings().setZoomControlsEnabled(false);
并管理其他典型的GoogleMaps互动(指南针控制,倾斜,滚动和轮播互动)。
此外,您可以使用
禁用所有内容map.getUiSettings().setAllGesturesEnabled(false);
请注意,如果您在ViewPager中将地图设为片段,则: mMap.getUiSettings()setScrollGesturesEnabled(假)。 您可以让左右控制滚动到PagerAdapter,而不是让它们具有地图滚动的效果。
此致 安德烈
答案 1 :(得分:0)
呀。按照此处的说明操作:https://developers.google.com/maps/documentation/android/map
我的代码如下所示:
jGoogleMap = ((MapFragment) getFragmentManager().findFragmentById(
R.id.map)).getMap();
// jGoogleMap.getMyLocation();
jGoogleMap.setMyLocationEnabled(true);
currentLatLng = new LatLng(jCurrentLocation.getLatitude(),
jCurrentLocation.getLongitude());
jGoogleMap.moveCamera(CameraUpdateFactory.newLatLngZoom(currentLatLng,
15));
jGoogleMap.addMarker(new MarkerOptions().title("Current Location")
.position(currentLatLng));
jGoogleMap.setOptions( { draggable: false, zoomControl: false,
scrollwheel: false, disableDoubleClickZoom: true});