Я создаю приложение с одним действием, в котором все действия, касающиеся ящика и т. Д., Выполняются вручную, и с тремя фрагментами, в которых отображается основной контент.В MainActivity фрагмент с картой размещается внутри контейнера фрагмента.Но когда я запускаю приложение, экран становится белым за 2-3 секунды до отображения карты.
Я пробовал с getMapAsync с OnMapReadyCallback, который не работал, и я искалдругие решения, но не смогли найти работающие.
MainActivity.kt
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.main_activity)
setSupportActionBar(toolbar)
supportActionBar?.title = getString(R.string.app_name)
val toggle = ActionBarDrawerToggle(
this, drawer_layout, toolbar, R.string.navigation_drawer_open, R.string.navigation_drawer_close
)
drawer_layout.addDrawerListener(toggle)
toggle.syncState()
nav_view.setNavigationItemSelectedListener(this)
supportFragmentManager.beginTransaction()
.replace(R.id.fragmentContainer, MapFragment())
.commit()
if (!checkDataConnection()) {
val dialogView = View.inflate(this, R.layout.dialog_no_data, null)
val dialogBuilder = AlertDialog.Builder(this)
.setView(dialogView)
.setCancelable(false)
val alertDialog = dialogBuilder.show()
dialogView.rescanDataConnection.setOnClickListener {
if (checkDataConnection()) {
alertDialog.dismiss()
}
}
}
}
MapFragment.kt
class MapFragment : Fragment(), OnMapReadyCallback {
override fun onCreateView(
inflater: LayoutInflater, container: ViewGroup?,
savedInstanceState: Bundle?
): View? {
// Inflate the layout for this fragment
val view = inflater.inflate(R.layout.fragment_map, container, false)
val mapView = view.findViewById<MapView>(R.id.mapView)
mapView.onCreate(savedInstanceState)
mapView.getMapAsync(this)
try {
MapsInitializer.initialize(this.activity)
} catch (e: GooglePlayServicesNotAvailableException) {
e.printStackTrace()
}
return view
}
override fun onMapReady(p0: GoogleMap?) {
// Necessary function for loading map async
}
}
Так кто-нибудь может мне помочь с улучшением производительности?