У меня есть следующее действие, в котором у меня есть просмотр изображений, 2 просмотра флиппера и просмотр сетки вместе с ящиком навигации. Поскольку gridView по умолчанию является активацией с прокруткой, ранее прокручивался только мой просмотр сетки.Я хотел, чтобы вся моя деятельность была прокручиваемой, а не только gridView, поэтому для этого я поместил свой frameLayout в nestedScrollView.Я также установил grid.setNestedScrollingEnabled (false) в моем файле MainActivity.java.
Вот мой xml-файл:
<?xml version="1.0" encoding="utf-8"?>
<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/drawerLayout"
android:nestedScrollingEnabled="true"
tools:context="com.example.xxx.xxx.MainActivity"
app:layout_behavior="android.support.design.widget.AppBarLayout.ScrollingViewBehaviour">
<android.support.v4.widget.NestedScrollView
android:layout_width="match_parent"
android:layout_height="match_parent">
<FrameLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/frameLayout">
<android.support.constraint.ConstraintLayout 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/activity_main"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#ffff"
android:fitsSystemWindows="true"
android:isScrollContainer="true"
android:orientation="vertical"
tools:context="com.example.xxx.xxx.MainActivity">
<ImageView
android:id="@+id/b1"
android:layout_width="wrap_content"
android:layout_height="61dp"
android:scaleType="fitXY"
android:src="@drawable/banner1"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.0"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
android:contentDescription="@string/todo" />
<technolifestyle.com.imageslider.FlipperLayout
android:id="@+id/flipper"
android:layout_width="wrap_content"
android:layout_height="66dp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.0"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/b1" />
<technolifestyle.com.imageslider.FlipperLayout
android:id="@+id/Flipper2"
android:layout_width="wrap_content"
android:layout_height="67dp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/flipper">
</technolifestyle.com.imageslider.FlipperLayout>
<GridView
android:id="@+id/grid"
android:layout_width="wrap_content"
android:layout_height="542dp"
android:background="#ffff"
android:gravity="center"
android:horizontalSpacing="2dp"
android:numColumns="3"
android:padding="2dp"
android:stretchMode="columnWidth"
android:verticalSpacing="2dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.0"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/Flipper2"
app:layout_constraintVertical_bias="0.615" />
</android.support.constraint.ConstraintLayout>
</FrameLayout>
</android.support.v4.widget.NestedScrollView>
<android.support.design.widget.NavigationView
android:id="@+id/navView"
android:layout_width="200dp"
android:layout_height="match_parent"
app:menu="@menu/navigation_menu"
android:background="#ffff"
app:itemTextColor="#0f0f0f"
android:layout_gravity="start"
app:itemIconTint="@color/black_overlay"
android:fitsSystemWindows="true"/>
</android.support.v4.widget.DrawerLayout>