在我的应用程序中,我有2个活动,MainActivity和SecondActivity。
在MainActivity中,我有三个标签: -
问题出在这种情况: -
仅在2.2版本,2.3版本和3.0版本中发生这种情况。 如果我更改了标签并返回第三个标签,那么它可以正常工作。 另请注意:SecondActivity还有一个全屏谷歌地图。
我怀疑,这个问题是由GoogleMaps引起的。 请帮忙!
提前致谢。
答案 0 :(得分:1)
我有类似的问题,并设法找到一个快速解决方案,虽然我不确定你是否完全符合我的情况。但就是这样:
我的应用程序使用ViewAnimator,其中儿童是经典的Android布局,除了一个是GlSurfaceView。我遇到了与调用另一个活动(在我的情况下为Swarm)并返回时相同的问题(关于AlertDialogs和Spinner"弹出窗口"。Toasts正在运行)。
然后我注意到问题实际上是由于我的GLSurfaceView:我删除了我的其他活动,并且能够通过转到GLSurfaceView,返回菜单,回到主页,然后返回应用程序来重现问题。在调查时,当我注意到我的GLSurfaceView子实际上是一个带有GLSurfaceView Inside的LinearLayout时,我能够找到一个quickfix。当我删除(无用的)父布局时,我的问题就完全消失了。
我不知道为什么会发生这种情况,稍后我会进行更多调查。但对我来说,表面视图是问题所在: http://developer.android.com/reference/android/view/SurfaceView.html "表面是Z排序的,因此它位于窗口后面,保持着SurfaceView; SurfaceView在其窗口中打孔以允许其表面显示。"。请注意,现在,在表面视图子项之后显示另一个具有一些空背景的子项不会显示具有黑色背景的表面视图(就好像它位于下方),而只是显示黑色。
我想不知怎的,用自己的z创建实际表面在窗口下,AlertDialogs使用z顺序,隐藏/显示活动会造成完全混乱。
如果您没有任何GLSurfaceView,我认为这可能对您没有帮助,但Google Maps可能会使用一个吗?如果是这样,我不确定你如何解决它,但它至少可以解决发生的事情。