使用GoogleMapOptions初始化MapFragment

时间:2014-02-08 22:09:49

标签: android google-maps android-fragments

我正在尝试使用谷歌地图,例如禁用缩放手势等选项。我在下面的代码中添加了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();

有人能告诉我我的代码有什么问题吗?

2 个答案:

答案 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});