title: Page Scroll Problems with CardView and ListView
body: <p>I have a XML layout as follows: </p>
  
  <pre><code>&lt;?xml version="1.0" encoding="utf-8"?&gt;
  &lt;android.support.constraint.ConstraintLayout 
  xmlns:android="http://schemas.android.com/apk/res/android"
  xmlns:app="http://schemas.android.com/apk/res-auto"
  xmlns:card_view="http://schemas.android.com/tools"
  xmlns:tools="http://schemas.android.com/tools"
  android:layout_width="match_parent"
  android:layout_height="match_parent"
  android:background="@color/accounts_details_page_background_color"&gt;
  
  &lt;android.support.v7.widget.CardView
      android:id="@+id/overview_cardview"
      android:layout_width="match_parent"
      android:layout_height="wrap_content"
      android:layout_marginTop="8dp"
      android:background="@color/white"
      app:layout_constraintEnd_toEndOf="parent"
      app:layout_constraintStart_toStartOf="parent"
      app:layout_constraintTop_toTopOf="parent"
      app:layout_constraintVertical_bias="0.0"
      card_view:cardElevation="2dp"
      card_view:ignore="PrivateResource"&gt;
  
      &lt;android.support.constraint.ConstraintLayout
          android:layout_width="match_parent"
          android:layout_height="wrap_content"
          android:layout_marginBottom="16dp"
          android:layout_marginLeft="16dp"
          android:layout_marginStart="16dp"&gt;
  
          &lt;TextView
              android:id="@+id/fragment_compliance_details_overview"
              android:layout_width="wrap_content"
              android:layout_height="wrap_content"
              android:layout_marginTop="8dp"
              android:text="@string/compliance_details_fragment_overview"
              android:textColor="@color/compliance_overview_title_color"
              android:textSize="@dimen/text_size_small"
              android:textStyle="bold"
              app:layout_constraintStart_toStartOf="parent"
              app:layout_constraintTop_toTopOf="parent" /&gt;
  
          &lt;TextView
              android:id="@+id/policy_name"
              android:layout_width="wrap_content"
              android:layout_height="wrap_content"
              android:layout_marginTop="32dp"
              android:textColor="@color/black"
              android:textSize="@dimen/text_size_large"
              android:textStyle="bold"
              app:layout_constraintStart_toStartOf="parent"
              app:layout_constraintTop_toBottomOf="@id/fragment_compliance_details_overview" /&gt;
  
          &lt;TextView
              android:id="@+id/last_check_time_only"
              android:layout_width="wrap_content"
              android:layout_height="wrap_content"
              android:textSize="@dimen/text_size_small"
              app:layout_constraintStart_toStartOf="parent"
              app:layout_constraintTop_toBottomOf="@id/policy_name" /&gt;
  
          &lt;View
              android:id="@+id/horizontal_line_compliance"
              android:layout_width="match_parent"
              android:layout_height="2dp"
              android:layout_marginTop="16dp"
              android:background="?android:attr/listDivider"
              app:layout_constraintStart_toStartOf="parent"
              app:layout_constraintTop_toBottomOf="@id/last_check_time_only" /&gt;
  
          &lt;TextView
              android:id="@+id/compliance_policy_status_explanation"
              android:layout_width="wrap_content"
              android:layout_height="wrap_content"
              android:layout_marginTop="16dp"
              android:textSize="@dimen/text_size_small"
              app:layout_constraintStart_toStartOf="parent"
              app:layout_constraintTop_toBottomOf="@id/horizontal_line_compliance" /&gt;
  
          &lt;TextView
              android:id="@+id/last_check_time"
              android:layout_width="wrap_content"
              android:layout_height="wrap_content"
              android:layout_marginTop="4dp"
              android:text="@string/last_compliance_check_time"
              android:textSize="@dimen/text_size_small"
              app:layout_constraintStart_toStartOf="parent"
              app:layout_constraintTop_toBottomOf="@id/compliance_policy_status_explanation" /&gt;
  
          &lt;TextView
              android:id="@+id/compliance_user_action_advice"
              android:layout_width="wrap_content"
              android:layout_height="wrap_content"
              android:layout_marginTop="4dp"
              android:text="@string/compliance_user_advice"
              android:textSize="@dimen/text_size_small"
              android:visibility="gone"
              app:layout_constraintStart_toStartOf="parent"
              app:layout_constraintTop_toBottomOf="@id/last_check_time" /&gt;
  
      &lt;/android.support.constraint.ConstraintLayout&gt;
  
  
  &lt;/android.support.v7.widget.CardView&gt;
  
  &lt;android.support.v7.widget.CardView
      android:id="@+id/details_cardview"
      android:layout_width="match_parent"
      android:layout_height="wrap_content"
      android:layout_marginTop="16dp"
      android:background="@color/white"
      app:layout_constraintBottom_toBottomOf="parent"
      app:layout_constraintEnd_toEndOf="parent"
      app:layout_constraintStart_toStartOf="parent"
      app:layout_constraintTop_toBottomOf="@id/overview_cardview"
      app:layout_constraintVertical_bias="0.0"
      card_view:cardElevation="2dp"&gt;
  
      &lt;LinearLayout
          android:layout_width="match_parent"
          android:layout_height="wrap_content"
          android:layout_marginLeft="16dp"
          android:layout_marginStart="16dp"
          android:orientation="vertical"&gt;
  
          &lt;TextView
              android:id="@+id/policy_details_title"
              android:layout_width="wrap_content"
              android:layout_height="wrap_content"
              android:layout_marginTop="8dp"
              android:text="@string/policy_details_title"
              android:textColor="@color/compliance_overview_title_color"
              android:textSize="14sp"
              android:textStyle="bold"
              android:visibility="gone" /&gt;
  
          &lt;ListView
              android:id="@+id/compliance_rules_listview"
              android:layout_width="match_parent"
              android:layout_height="wrap_content"
              android:layout_marginTop="16dp"
              android:visibility="gone" /&gt;
  
      &lt;/LinearLayout&gt;
  
  &lt;/android.support.v7.widget.CardView&gt;
  
  &lt;/android.support.constraint.ConstraintLayout&gt;
  </code></pre>
  
  <p>When the ListView has more than 3-4 rows the page does not scroll. The ListView does not scroll either. </p>
  
  <p>I tried wrapping the whole thing in a NestedScrollView but that just gets the ListView scrolling and not even entirely. </p>
  
  <p>I want the entire page to scroll and end scrolling when the ListView ends. Any ideas would help.</p>