Странное поведение нижнего навигационного представления, когда оно установлено видимым

Я пытаюсь создать приложение, используя шаблон нескольких фрагментов одного действия. Я обрабатываю навигацию с помощью компонента архитектуры навигации, используя нижний вид навигации. В одном из фрагментов у меня есть Recyclerview, который отображает список пользовательских карт. При щелчке элемента он переходит к другому фрагменту, где мне нужно скрыть нижний вид навигации.

Проблема возникает, когда я возвращаюсь назад и снова устанавливаю видимость нижнего навигационного представления. Кажется, что полоса появляется в два этапа, создавая ощущение отставания. (в первый раз появляется только 60% нижнего навигационного вида).

Поведение, похоже, связано со строкой состояния. Когда я меняю тему на полноэкранный режим или ставлю windowTranslucentStatus=true, все нормально. Кроме того, в первый раз панель навигации кажется ровно на 24dp меньше, то есть размер строки состояния.

Ты хоть представляешь, что я могу сделать? PS. Я новичок в stackoverflow, и это мой первый вопрос. Я рад присоединиться к этому замечательному сообществу.


comment
попробуйте добавить некоторую задержку перед отображением BottomNavigationView и запустить его в отдельном потоке.   -  person Logic    schedule 18.04.2019


Ответы (1)


Задержка - это один из способов, но я бы не советовал этого.

Я предполагаю, что ваше навигационное представление отображается до того, как будет отображено все действие, что приводит к его повторному отображению после отображения пользовательского интерфейса. Почему бы вам не попробовать установить видимость после рендеринга пользовательского интерфейса, например здесь

person Nirup Iyer    schedule 18.04.2019