Я использую файл navigation.xml для перехода на другой fragments
.но проблема в том, что когда я перехожу на другие fragment
и возвращаюсь.RecyclerView
в fragment
пусто.Я использую MVVM stucture + jetpack.чтобы сделать приложение, поэтому я привязываю данные к RecyclerView
.Есть ли способ предотвратить пустое fragment
?Некоторые образцы или подсказки были бы прекрасны.Я хотел бы услышать от вас!
<?xml version="1.0" encoding="utf-8"?>
<navigation xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
app:startDestination="@+id/navigation_show">
<fragment
android:id="@+id/navigation_show"
android:name="test.ShowFragment"
android:label="@string/menu_bar_show"
tools:layout="@layout/layout_show">
</fragment>
<fragment
android:id="@+id/navigation_help"
android:name="test.HelpFragment"
android:label="@string/menu_bar_help"
tools:layout="@layout/layout_help">
</fragment>
</navigation>
Это в основной деятельности
private fun setupNavigation() {
val navController = Navigation.findNavController(this, R.id.mainNavigationFragment)
NavigationUI.setupWithNavController(bottomNavigationView, navController)
setSupportActionBar(toolbar)
navController.addOnDestinationChangedListener { _, destination, _ ->
val actionBar = supportActionBar
actionBar!!.setDisplayHomeAsUpEnabled(false)
actionBar.setLogo(null)
actionBar.title = ""
when (destination.id) {
R.id.navigation_show -> {
supportActionBar!!.setLogo(R.drawable.pic)
}
else -> {
actionBar.title = destination.label.toString()
}
}
}
}