Приложение с одним действием, фрагмент onCreateView вызывается снова после отсоединения
Теперь, когда Google выпустил BottomNavigationView, дизайнеры из моей работы хотят, чтобы у меня сохранялось нижнее меню для всех видов в приложении.
Это означает, что мне нужно создать одно приложение Activity. Но похоже, что Android Framework на самом деле не предназначен для этого, но я попробую. До сих пор я узнал, что вам приходится иметь дело с бэкстеком самостоятельно и с другим жизненным циклом при использовании фрагментов вместо операций.
Моя самая большая проблема сейчас заключается в том, что я не понимаю поток жизненного цикла, когда фрагменты отсоединяются и снова присоединяются. Когда это происходит, все переменные в вашем классе еще живы, onCreate не вызывается, но onCreateView вызывается снова. Таким образом, мы находимся в состоянии, когда фрагмент / представление, кажется, уже жив, но поскольку вызывается onCreateView, я предполагаю, что мне нужно заново создать свой RecyclerView, адаптер, ProgressBar и т. Д., Так как onCreateView требует, чтобы View был возвращен. В моем текущем приложении у меня есть RecyclerView, и когда я щелкаю по элементу, я открываю новый фрагмент, предыдущий отсоединяется (я не использую скрытие, так как это могло бы стать проблемой памяти с большим количеством скрытых фрагментов). Когда я нажимаю назад, отсоединенный фрагмент получает Attached, а затем снова вызывается onCreateView, и я теряю свою текущую позицию прокрутки для RecyclerView.
Как мне поступить с вызовом onCreateView снова?
В настоящее время я использую библиотеку FragNav для обработки фрагментов: https://github.com/ncapdevi/FragNav