Фрагментируйте общие элементы и отображайте вырезы

У меня проблема с вырезами дисплея. При создании фрагмента вonActivityCreated, Выполняю запрос на получение вырезов дисплея

ViewCompat.setOnApplyWindowInsetsListener(contentContainer) { _, insets ->
    windowInsets = insets!!
    insets.consumeSystemWindowInsets()
}

тогда, если у меня есть systemWindowInsetTop>0 или systemWindowInsetBottom<0 Я установил поля для некоторых видов фрагмента.

У меня нет проблем с этим поведением, если у меня нет общих элементов среди фрагментов. Но если нет, то при наличии некоторых общих элементов новые поля применяются только после завершения перехода фрагмента. Итак, когда показан фрагмент, я вижу исходные поля, а затем, после завершения перехода, я вижу примененные новые поля...

Все это очень странно... Это правильный способ справиться со всем этим?

0 ответов

Другие вопросы по тегам