【问题标题】:Android - Two Maps in one AppAndroid - 一个应用程序中的两个地图
【发布时间】:2012-05-08 09:26:26
【问题描述】:

我有一个应用程序,在主屏幕上显示 google mapView。但我还需要在细节视图中显示地图。

我知道同时运行两张地图是不可能的。当我想在主地图上显示某些东西时,一切都在工作,然后在详细视图中显示,但是当我回到主地图时,它停止了。

如何停止主地图并稍后返回?

【问题讨论】:

    标签: android google-maps android-mapview android-maps


    【解决方案1】:

    在一个应用中包含两个地图会产生许多奇怪的应用行为。例如,我在第二张地图中显示了一张地图的叠加层。
    也就是说,可以在一个应用程序中拥有两个地图,而不会发生上述情况。你需要做的是为第二个mapview指定一个新进程:

    <activity
            android:label="@string/app_name"
            android:name=".SecondMapActivityName"
            android:process=":SecondMapProcess"
             >
    </activity>
    

    以上代码位于清单中,用于包含第二个 MapView 的活动。这样,在同一个应用程序中就会为这个活动启动一个新流程,并且您的两个地图都可以正常运行。

    【讨论】:

    • 我尝试了你的想法,但它在活动切换中显示黑屏不到一秒。
    • @Akki,一般来说Android中的一个应用就是一个进程。但是现在由于您的其他地图处于另一个进程中,因此性能方面就像另一个应用程序启动一样,因此黑屏间隔很短。很高兴听到这个好消息。
    【解决方案2】:

    每次我想使用它时,我都会在代码中创建一个新的地图视图(是的开销,但它有效;))。

    mMapView = new MapView(this, MAPS_KEY);
    setContentView(mMapView);
    mMapView.invalidate();
    

    【讨论】:

      【解决方案3】:

      如果您不需要与其他地图交互,您可以在精简模式下使用它: https://developers.google.com/maps/documentation/android-api/lite

      它创建一个看起来像地图的位图图像。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-10-14
        • 1970-01-01
        • 2010-12-21
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多