javaandroidxmlandroid-fragmentsandroid-bottomnavigationview

Bottom Navigation Bar and NestedScroll View hide my fragment activity


I have an activity with a bottom navigation bar and fragments to show trough the items of this activity, in the first item i have a fragment layout with a nedted scroll view menu with 14 options, but when im scrolling in this fragment dont show completely all the option of my menu.

Here my "activity_inicio" with it bottom navigation bar

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/inicio_frame"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@color/white"
    tools:context=".Inicio">

    <com.google.android.material.bottomnavigation.BottomNavigationView
        android:id="@+id/bottom_navigation"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentStart="true"
        android:layout_alignParentLeft="true"
        android:layout_alignParentEnd="true"
        android:layout_alignParentRight="true"
        android:layout_alignParentBottom="true"
        android:elevation="20dp"
        app:itemIconTint="@drawable/navigation"
        app:itemTextColor="@drawable/navigation"
        app:labelVisibilityMode="selected"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintRight_toRightOf="parent"
        app:menu="@menu/bottom_navigation_menu"></com.google.android.material.bottomnavigation.BottomNavigationView>
</RelativeLayout>

And Here my fragment layout fragment_tae with it nested scroll view

<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".TaeFragment">
    <!-- TODO: Update blank fragment layout -->
    <androidx.core.widget.NestedScrollView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:padding="15dp">
        <RelativeLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent">
            <androidx.appcompat.widget.LinearLayoutCompat
                android:id="@+id/header"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:orientation="vertical"
                android:padding="10dp">
                <TextView
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:layout_marginTop="5dp"
                    android:gravity="center"
                    android:text="@string/tae_pantalla"
                    android:textColor="@color/black"
                    android:textSize="30sp"
                    android:textStyle="bold" />
            </androidx.appcompat.widget.LinearLayoutCompat>
            <!--Menu Opciones-->
            <!--Opciones 1 y 2-->
            <androidx.appcompat.widget.LinearLayoutCompat
                android:id="@+id/row_1"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_below="@id/header"
                android:layout_marginTop="20dp"
                android:orientation="horizontal"
                android:weightSum="2">
                <androidx.appcompat.widget.LinearLayoutCompat
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_weight="1"
                    android:orientation="vertical">
                    <androidx.appcompat.widget.AppCompatImageButton
                        android:layout_width="120dp"
                        android:layout_height="120dp"
                        android:layout_gravity="center"
                        android:scaleType="fitCenter"
                        app:srcCompat="@drawable/telcel" />
                </androidx.appcompat.widget.LinearLayoutCompat>
                <androidx.appcompat.widget.LinearLayoutCompat
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_weight="1"
                    android:orientation="vertical">
                    <androidx.appcompat.widget.AppCompatImageButton
                        android:layout_width="120dp"
                        android:layout_height="120dp"
                        android:layout_gravity="center"
                        android:layout_marginStart="5dp"
                        android:scaleType="fitCenter"
                        app:srcCompat="@drawable/movistar" />
                </androidx.appcompat.widget.LinearLayoutCompat>
            </androidx.appcompat.widget.LinearLayoutCompat>
            <!--Opciones 3y 4-->
            <androidx.appcompat.widget.LinearLayoutCompat
                android:id="@+id/row_2"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_below="@id/row_1"
                android:layout_marginTop="40dp"
                android:orientation="horizontal"
                android:weightSum="2">

                <androidx.appcompat.widget.LinearLayoutCompat
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_weight="1"
                    android:orientation="vertical">

                    <androidx.appcompat.widget.AppCompatImageButton
                        android:layout_width="120dp"
                        android:layout_height="120dp"
                        android:layout_gravity="center"
                        android:scaleType="fitCenter"
                        app:srcCompat="@drawable/att" />
                </androidx.appcompat.widget.LinearLayoutCompat>

                <androidx.appcompat.widget.LinearLayoutCompat
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_weight="1"
                    android:orientation="vertical">

                    <androidx.appcompat.widget.AppCompatImageButton
                        android:layout_width="120dp"
                        android:layout_height="120dp"
                        android:layout_gravity="center"
                        android:layout_marginStart="5dp"
                        android:scaleType="fitCenter"
                        app:srcCompat="@drawable/att" />
                </androidx.appcompat.widget.LinearLayoutCompat>
            </androidx.appcompat.widget.LinearLayoutCompat>
            <!--Opciones 5 y 6-->
            <androidx.appcompat.widget.LinearLayoutCompat
                android:id="@+id/row_3"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_below="@id/row_2"
                android:layout_marginTop="40dp"
                android:orientation="horizontal"
                android:weightSum="2">

                <androidx.appcompat.widget.LinearLayoutCompat
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_weight="1"
                    android:orientation="vertical">

                    <androidx.appcompat.widget.AppCompatImageButton
                        android:layout_width="120dp"
                        android:layout_height="120dp"
                        android:layout_gravity="center"
                        android:scaleType="fitCenter"
                        app:srcCompat="@drawable/att" />
                </androidx.appcompat.widget.LinearLayoutCompat>

                <androidx.appcompat.widget.LinearLayoutCompat
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_weight="1"
                    android:orientation="vertical">

                    <androidx.appcompat.widget.AppCompatImageButton
                        android:layout_width="120dp"
                        android:layout_height="120dp"
                        android:layout_gravity="center"
                        android:layout_marginStart="5dp"
                        android:scaleType="fitCenter"
                        app:srcCompat="@drawable/att" />
                </androidx.appcompat.widget.LinearLayoutCompat>
            </androidx.appcompat.widget.LinearLayoutCompat>
            <!--Opciones 7 y 8-->
            <androidx.appcompat.widget.LinearLayoutCompat
                android:id="@+id/row_4"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_below="@id/row_3"
                android:layout_marginTop="40dp"
                android:orientation="horizontal"
                android:weightSum="2">

                <androidx.appcompat.widget.LinearLayoutCompat
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_weight="1"
                    android:orientation="vertical">

                    <androidx.appcompat.widget.AppCompatImageButton
                        android:layout_width="120dp"
                        android:layout_height="120dp"
                        android:layout_gravity="center"
                        android:scaleType="fitCenter"
                        app:srcCompat="@drawable/att" />
                </androidx.appcompat.widget.LinearLayoutCompat>

                <androidx.appcompat.widget.LinearLayoutCompat
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_weight="1"
                    android:orientation="vertical">

                    <androidx.appcompat.widget.AppCompatImageButton
                        android:layout_width="120dp"
                        android:layout_height="120dp"
                        android:layout_gravity="center"
                        android:layout_marginStart="5dp"
                        android:scaleType="fitCenter"
                        app:srcCompat="@drawable/att" />
                </androidx.appcompat.widget.LinearLayoutCompat>
            </androidx.appcompat.widget.LinearLayoutCompat>
            <!--Opción 9 y 10-->
            <androidx.appcompat.widget.LinearLayoutCompat
                android:id="@+id/row_5"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_below="@id/row_4"
                android:layout_marginTop="40dp"
                android:orientation="horizontal"
                android:weightSum="2">

                <androidx.appcompat.widget.LinearLayoutCompat
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_weight="1"
                    android:orientation="vertical">

                    <androidx.appcompat.widget.AppCompatImageButton
                        android:layout_width="120dp"
                        android:layout_height="120dp"
                        android:layout_gravity="center"
                        android:scaleType="fitCenter"
                        app:srcCompat="@drawable/att" />
                </androidx.appcompat.widget.LinearLayoutCompat>

                <androidx.appcompat.widget.LinearLayoutCompat
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_weight="1"
                    android:orientation="vertical">

                    <androidx.appcompat.widget.AppCompatImageButton
                        android:layout_width="120dp"
                        android:layout_height="120dp"
                        android:layout_gravity="center"
                        android:layout_marginStart="5dp"
                        android:scaleType="fitCenter"
                        app:srcCompat="@drawable/att" />
                </androidx.appcompat.widget.LinearLayoutCompat>
            </androidx.appcompat.widget.LinearLayoutCompat>
            <!--Opción 11 & 12-->
            <androidx.appcompat.widget.LinearLayoutCompat
                android:id="@+id/row_6"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_below="@id/row_5"
                android:layout_marginTop="40dp"
                android:orientation="horizontal"
                android:weightSum="2">

                <androidx.appcompat.widget.LinearLayoutCompat
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_weight="1"
                    android:orientation="vertical">

                    <androidx.appcompat.widget.AppCompatImageButton
                        android:layout_width="120dp"
                        android:layout_height="120dp"
                        android:layout_gravity="center"
                        android:scaleType="fitCenter"
                        app:srcCompat="@drawable/att" />
                </androidx.appcompat.widget.LinearLayoutCompat>

                <androidx.appcompat.widget.LinearLayoutCompat
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_weight="1"
                    android:orientation="vertical">

                    <androidx.appcompat.widget.AppCompatImageButton
                        android:layout_width="120dp"
                        android:layout_height="120dp"
                        android:layout_gravity="center"
                        android:layout_marginStart="5dp"
                        android:scaleType="fitCenter"
                        app:srcCompat="@drawable/att" />
                </androidx.appcompat.widget.LinearLayoutCompat>
            </androidx.appcompat.widget.LinearLayoutCompat>
            <!--Opciones 13 & 14-->
            <androidx.appcompat.widget.LinearLayoutCompat
                android:id="@+id/row_7"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_below="@id/row_6"
                android:layout_marginTop="40dp"
                android:orientation="horizontal"
                android:weightSum="2">

                <androidx.appcompat.widget.LinearLayoutCompat
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_weight="1"
                    android:orientation="vertical">

                    <androidx.appcompat.widget.AppCompatImageButton
                        android:layout_width="120dp"
                        android:layout_height="120dp"
                        android:layout_gravity="center"
                        android:scaleType="fitCenter"
                        app:srcCompat="@drawable/att" />
                </androidx.appcompat.widget.LinearLayoutCompat>

                <androidx.appcompat.widget.LinearLayoutCompat
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_weight="1"
                    android:orientation="vertical">

                    <androidx.appcompat.widget.AppCompatImageButton
                        android:layout_width="120dp"
                        android:layout_height="120dp"
                        android:layout_gravity="center"
                        android:layout_marginStart="5dp"
                        android:scaleType="fitCenter"
                        app:srcCompat="@drawable/att" />
                </androidx.appcompat.widget.LinearLayoutCompat>
            </androidx.appcompat.widget.LinearLayoutCompat>
        </RelativeLayout>
    </androidx.core.widget.NestedScrollView>
</FrameLayout>

The bottom bar is always front the fragment view scroll


Solution

  • You should add a bottom padding to your fragment, but you'd better use listView or recycler view to show this much items