【发布时间】:2011-04-10 04:18:57
【问题描述】:
我有一个应用程序,它有两个地图视图,一个卫星视图和一个街景视图。即使一个设置为setStreetView(true);,另一个设置为setSattelite(true);,它们都继续显示为卫星视图。我如何才能让两个视图显示不同的地图?
提前致谢。
【问题讨论】:
标签: android eclipse google-maps android-maps
我有一个应用程序,它有两个地图视图,一个卫星视图和一个街景视图。即使一个设置为setStreetView(true);,另一个设置为setSattelite(true);,它们都继续显示为卫星视图。我如何才能让两个视图显示不同的地图?
提前致谢。
【问题讨论】:
标签: android eclipse google-maps android-maps
假设您要同时显示两者,这似乎是不可能的。看 How to Make 2 MapView on One Activity
已更新以回复评论。
根据 Google Map API MapActivity,“每个进程仅支持一个 MapActivity。同时运行的多个 MapActivity 可能会以意想不到的方式干扰。”因此,即使您有两个不同的 MapActivities,您也必须处理 Process Lifecycle,其中一个活动可能是可见的,而另一个活动是背景,这就是您遇到问题的地方。
第二次更新
因此,根据此线程Limitations of the MapView and MapActivity,一位评论者在两个 MapActivity 之间放置了一个单独的活动,并且能够使其工作,但否则您将不得不使用覆盖/找到一种方法来使您的应用程序仅与一个 MapActivity 一起工作。
【讨论】:
提出了一个解决方案here。
众所周知,在一个进程中使用多个地图视图时,您可能会遇到一些问题。如果您没有配置任何特定的东西,通常是这种情况(您的应用程序在一个进程中运行)。您可以在清单中使用 android:process 属性来分配给您的活动
【讨论】: