我的一项活动切换了包含谷歌地图的片段。
起初我尝试使用片段的子片段管理器(ChildFragmentManager)来添加SupportMapFragment
. 它工作正常,但是为每个片段再次加载地图,这需要很多时间。
我未能SupportMapFragment
从一个片段分离并将其附加到另一个片段,因为它以某种方式与ViewGroup
它最初放置的位置相关联。
所以最后我决定使用MapView
在活动中创建的普通对象并将其添加到活动片段的视图组中,并在放入另一个片段的视图组之前将其删除。
一切正常,除了onSaveInstanceState
(MapView 需要手动传递调用所有活动生命周期方法,如onResume
, onPause
, onDestroy
, onSaveInstanceState
)。当我尝试调用mapView.onSaveInstanceState
我的活动时,它会破坏应用程序。
我想知道是否有其他人成功地在多个片段中重用了 GoogleMap?