BottomNavigationView не реагирует на прокрутку внутри фрагмента, если фрагмент содержит AppBarLayout - PullRequest
0 голосов
/ 27 октября 2018

У меня много проблем с прокруткой и обнаружением ее внутри фрагментов с помощью координататор в Android.У меня есть «Основная деятельность», в которой есть 3 фрагмента.Только на одном из этих фрагментов я хочу иметь панель приложений, которая разрушается при прокрутке фрагмента.Мне удалось сделать это, но если я установил beahivour прокрутки, чтобы позволить это, мой bottomNavigationView (который находится в mainactivity.xml) НЕ реагирует на прокрутку.Коды выглядят примерно так:

Fragment1.xml

<android.support.design.widget.CoordinatorLayout
...
.../>
 <android.support.design.widget.AppBarLayout
 ...
 .../>
   <android.support.design.widget.CollapsingToolbarLayout
   app:layout_scrollFlags="scroll|exitUntilCollapsed"
   ...>
     <android.support.v7.widget.Toolbar
     .../>
   </android.support.design.widget.CollapsingToolbarLayout>
</android.support.design.widget.AppBarLayout>
   <android.support.v4.widget.NestedScrollView
   app:layout_behavior="@string/appbar_scrolling_view_behavior"
   </android.support.v4.widget.NestedScrollView>
</android.support.design.widget.CoordinatorLayout>

MainActivity.xml

<android.support.design.widget.CoordinatorLayout
.../>
  <FrameLayout
 app:layout_behavior="@string/appbar_scrolling_view_behavior"
 .../>
 <android.support.design.widget.BottomNavigationView
 app:layout_behavior="@string/hide_bottom_view_on_scroll_behavior"
.../>
</android.support.design.widget.CoordinatorLayout>

Теперь это работает достаточно хорошо, в том смысле, что при прокруткевнутри фрагмента моя панель приложений сворачивается в заголовок (что я хочу), НО мой bottomNavigationView не реагирует на прокрутку.

Что я обнаружил, так это то, что если я добавлю строку

app:layout_behavior="@string/appbar_scrolling_view_behavior"

в декларации AppBarLyout xml я получаю bottomView, чтобы свернуться при событии прокрутки (когда я прокручиваю вверх, он снова отображается).Так что, в основном, у меня есть возможность свернуть панель приложения внутри фрагмента ИЛИ у меня есть возможность скрыть BottomNavigationView при обнаружении события прокрутки во фрагменте.

Любая помощь будет признательна, я схожу с ума по этому вопросу в течение 3 дней подряд.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...