我在新的v2 API中遇到了谷歌地图对象的问题。我正在尝试添加方法来显示和隐藏地图对象,但我似乎无法让它工作。
例如 - 我有一个名为MyMapFragment的类,它扩展了MapFragment类。
我尝试了几种我在这里发布过的方法,但似乎都不适合我。
选项1: 在MyMapFragment类中,我试过调用:
this.getFragmentManager().beginTransaction().hide(this).commit();
选项2: 我试图隐藏实际的包含视图,使用如下内容:
getActivity().getWindow().findViewById(CONTENT_VIEW_ID);
v.setVisibility( View.INVISIBLE );
这两个选项都成功隐藏了地图的UI控件(即缩放控件),但实际的地图并未隐藏。
有人看到这种隐藏地图片段的方法可能有什么问题吗?
非常感谢!
答案 0 :(得分:2)
尝试将其放入FrameLayout
,然后将ID分配给布局,并使用方法.setVisibility(View.GONE/View.VISIBLE)
显示/隐藏整个布局
不确定这是否正确,但对我有效。
希望它有所帮助!
答案 1 :(得分:1)
我遇到了同样的问题(见MapFragment and Camera seem to interfere with each other in the same Activity)。在我的例子中,用户CommonsWare建议我的问题是因为我在一个Activity中使用了两个SurfaceView对象,我就是这样。当我在一个应用程序中使用两个活动时,我的问题就消失了。也许这就是问题的根源?