在透明活动背后,GoogleMap不会刷新

时间:2014-06-18 10:05:09

标签: android android-activity google-maps-android-api-2

在我的应用程序中,我有一个主要活动,里面有一个GoogleMap片段。地图经常移动其相机并绘制标记和折线而无需用户直接交互(即跟随目标)。

当我在主要活动之上启动其他半透明/透明活动时,会出现问题。我不能使用对话框,片段的视图,不幸的是我只能使用活动。所以我宣称他们的风格为:

<style name="AppTheme.Transparent" parent="AppTheme">
    <item name="android:windowNoTitle">true</item>
    <item name="android:background">@android:color/transparent</item>
    <item name="android:windowBackground">@android:color/transparent</item>
    <item name="android:colorBackgroundCacheHint">@null</item>
    <item name="android:windowIsTranslucent">true</item>
</style>

这些活动将一些视图置于半透明的黑色背景之上,因此可以看到它们背后的地图。问题是地图绘制在这些活动后面根本没有更新,尽管例如移动相机的代码实际运行(我可以从日志或调试中看到它) 。只有在(并且立即)关闭叠加半透明活动之后,才能正确更新地图绘图。奇怪的是,在半透明活动后面,主要活动上的其他视图(例如,显示目标坐标的文本视图)也会正确更新,如果它们放在地图上的话。

是否有人知道为什么会发生这种情况,以及是否有办法在主机活动不在前台时强制重绘地图?

0 个答案:

没有答案