BottomAppBar отталкивается от экрана - PullRequest
0 голосов
/ 22 октября 2018

Когда я переключаюсь с любого фрагмента обратно в Список покупок с нижней панели приложения, он отталкивается от экрана, и я не знаю почему.Переключение между Фрагментом Холодильника и Фрагментом Кладовой прекрасно работает, но переключение с одного из них обратно на Фрагмент списка покупок отталкивает панель от экрана, как показано здесь:

GIF

репозиторий Github с полным кодом

1 Ответ

0 голосов
/ 22 октября 2018

Попробуйте эти изменения для FrameLayout, и я думаю, вам не понадобится fragment_navigation.xml после этого.

activity_main.xml:

<androidx.coordinatorlayout.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <FrameLayout
        android:id="@+id/relative_layout_for_fragment"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        app:layout_behavior="@string/appbar_scrolling_view_behavior" />

    <com.google.android.material.bottomappbar.BottomAppBar
        android:id="@+id/bottom_app_bar"
        style="@style/Widget.MaterialComponents.BottomAppBar"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_gravity="bottom"
        android:theme="@style/ThemeOverlay.MaterialComponents.Dark.ActionBar"
        app:backgroundTint="@color/colorPrimary"
        app:hideOnScroll="true"
        app:layout_scrollFlags="scroll|enterAlways"
        app:navigationIcon="@drawable/ic_menu_white_24dp" />

    <com.google.android.material.floatingactionbutton.FloatingActionButton
        android:id="@+id/fab"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/ic_add_shopping_cart_white_24dp"
        app:fabSize="normal"
        app:layout_anchor="@id/bottom_app_bar" />

</androidx.coordinatorlayout.widget.CoordinatorLayout>

Вы также сказали, что это происходит, когда вы переключаетесь на ShoppingListFragment, в котором еще один CoordinatorLayout.

Вы просто меняете fragment_shopping_list.xml коды следующим образом:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/shopping_fragment"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <TextView
        android:id="@+id/textView4"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="141dp"
        android:text="TextView" />

</RelativeLayout>

Или просто не используете CoordinatorLayout, тогда попробуйте.

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