两个地图视图之间的意外连接



>我有两个活动,每个活动都有一个地图视图。 问题是,当一个地图视图改变其中心或缩放时,另一个也会改变。我意识到每个地图视图都有不同的id(xml)和不同的名称变量。但问题仍然存在。

每个活动的代码都太长,无法在此处发布,因为它实现了很多功能。但我发布了最重要的部分:

活动 A)

    mapview_publish = (MapView) findViewById(R.id.mapview_publish);
    mapview_publish.setBuiltInZoomControls(true);
    mapController = mapview_publish.getController();
    mapController.setZoom(16); /

XML A)

    <com.google.android.maps.MapView
            android:id="@+id/mapview_publish"
            android:layout_width="fill_parent"
            android:layout_height="87dp"
            android:layout_marginLeft="7dp"
            android:layout_marginRight="7dp"
            android:layout_marginTop="12dp"
            android:apiKey="myapikey"
            android:clickable="false" />

活动 B)

    mapView = (MapView) findViewById(R.id.mapview);
    mapview.setBuiltInZoomControls(true);
    mapController = mapView.getController();
    mapController.setZoom(20);

XML B)

    <com.google.android.maps.MapView
        android:id="@+id/mapview"
        style="@style/mapView"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="40dp"
        android:apiKey="myapikey"
        android:background="@color/black"
        android:clickable="true" />

如果每个进程使用多个 MapViews,则可能会发生冲突。

https://developers.google.com/maps/documentation/android/reference/com/google/android/maps/MapActivity

每个进程仅支持一个 MapActivity。多个地图活动 同时跑步可能会干扰意外和 不想要的方式。

另请参阅我关于如何使用每个Android应用程序/进程的多个MapActivities/MapViews的回复

但正如 SpK 评论的那样,请提供您的活动代码。

最新更新