8

我的一项活动切换了包含谷歌地图的片段。

起初我尝试使用片段的子片段管理器(ChildFragmentManager)来添加SupportMapFragment. 它工作正常,但是为每个片段再次加载地图,这需要很多时间。

我未能SupportMapFragment从一个片段分离并将其附加到另一个片段,因为它以某种方式与ViewGroup它最初放置的位置相关联。

所以最后我决定使用MapView在活动中创建的普通对象并将其添加到活动片段的视图组中,并在放入另一个片段的视图组之前将其删除。

一切正常,除了onSaveInstanceState(MapView 需要手动传递调用所有活动生命周期方法,如onResume, onPause, onDestroy, onSaveInstanceState)。当我尝试调用mapView.onSaveInstanceState我的活动时,它会破坏应用程序。

我想知道是否有其他人成功地在多个片段中重用了 GoogleMap?

4

1 回答 1

-1

我在列表项中使用地图片段 - 我只有一个片段被创建并添加到View一次且只有一次 - 我有一个ExpandableListView并且我将它添加到适配器的getChildView.

于 2015-02-23T08:46:38.603 回答