Когда в основном действии верхняя панель и вставки отображаются правильно, но когда я перехожу на экран магазина, содержимое перекрывает верхнюю панель (см. изображение, кнопка скрывает кнопку «Назад»).

./MainActivity.kt
Код: Выделить всё
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
enableEdgeToEdge()
...
setSupportActionBar(binding.toolbar)
ViewCompat.setOnApplyWindowInsetsListener(binding.appBar) { v, insets ->
val systemBars = insets.getInsets(WindowInsetsCompat.Type.systemBars())
v.setPadding(systemBars.left, systemBars.top, systemBars.right, systemBars.bottom)
insets
}
val appBarConfig = AppBarConfiguration(
setOf(R.id.home_fragment),
binding.drawerLayout
)
setupActionBarWithNavController(navController, appBarConfig)
binding.navView.setupWithNavController(navController)
}
Код: Выделить всё
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
...
ViewCompat.setOnApplyWindowInsetsListener(view) { view, insets ->
val systemBars = insets.getInsets(WindowInsetsCompat.Type.systemBars())
view.updatePadding(
top = systemBars.top,
bottom = systemBars.bottom
)
insets
}
}
Код: Выделить всё
- Я пытаюсь обернуть содержимое DrawerLayout с помощью ConstraintLayout и добавить app:layout_constraintTop_toBottomOf="@id/app_bar" в FragmentContainerView.
- Я добавляю ViewCompat.requestApplyInsets(binding.root) к фрагменту после применения вставок.
Подробнее здесь: https://stackoverflow.com/questions/798 ... in-top-bar