我有几个片段的应用程序,其中大多数使用地图视图。
我对它们每个使用基本片段,并在其中进行所有mapboxMap配置。例如:
我要调用的内部片段:
override fun onMapReady(mapboxMap: MapboxMap?) {
mapBoxMap = mapboxMap
setUpMapForRoute(mapViewRouteInfo, btnMyLocationBR)
showRouteInfoOnMap()
}
我做基础片段配置
protected fun setUpMapForRoute(mapView: MapView, mMyLocationButton: FloatingActionButton) {
mapBoxMap?.addOnMapClickListener(this)
enableLocationPlugin(mapView)
setUpMyLocationBtn(mMyLocationButton)
}
还可以处理每个片段中的mapview生命周期方法。
override fun onStart() {
super.onStart()
mapView?.onStart()
}
override fun onResume() {
super.onResume()
mapView?.onResume()
}
但是应用程序使用大量内存,并且滞后时间太长。我想应该有一些更好的方式在片段之间共享mapview。或以某种方式释放内存更快。