2016-06-21 21 views
2

Ich stehe vor einem Problem in Bezug auf die Implementierung einer NestedScrollview innerhalb einer CoordinatorLayout. Sehen Sie im folgenden Layout-Code:Verschachtelte scrollview nimmt nicht verfügbaren Platz in CoordinatorLayout

<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:fitsSystemWindows="true" 
    xmlns:app="http://schemas.android.com/apk/res-auto" 
    xmlns:card_view="http://schemas.android.com/tools"> 

<android.support.design.widget.AppBarLayout 
    android:id="@+id/app_bar_layout" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    app:expanded="true" 
    android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar" 
    android:fitsSystemWindows="true"> 

    <android.support.design.widget.CollapsingToolbarLayout 
     android:id="@+id/collapsing_toolbar_layout" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     app:layout_scrollFlags="scroll|exitUntilCollapsed"> 

     <LinearLayout 
      android:layout_marginTop="?android:attr/actionBarSize" 
      app:layout_collapseMode="parallax" 
      android:layout_width="match_parent" 
      android:weightSum="2" 
      android:orientation="horizontal" 
      android:gravity="bottom" 
      android:fitsSystemWindows="true" 
      android:background="@color/aop_gray" 
      android:layout_height="87dp"> 

      <LinearLayout 
       android:background="#E5E5E5" 
       android:layout_width="0dp" 
       android:layout_weight="1" 
       android:layout_height="match_parent"> 

      </LinearLayout> 

      <LinearLayout 
       android:layout_width="0dp" 
       android:layout_weight="1" 
       android:layout_height="match_parent"> 
      </LinearLayout> 

     </LinearLayout> 

     <android.support.v7.widget.Toolbar 
      android:id="@+id/toolbar_anders" 
      android:layout_width="match_parent" 
      android:layout_height="?attr/actionBarSize" 
      android:background="@color/Custom_red" 
      style="@style/CustomTheme.CustomActionBar" 
      android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar" 
      /> 
     </android.support.design.widget.CollapsingToolbarLayout> 
    </android.support.design.widget.AppBarLayout> 

    <android.support.v4.widget.NestedScrollView 
     android:id="@+id/scroll" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:clipToPadding="false" 
     android:paddingTop="@dimen/activity_horizontal_margin" 
     android:paddingBottom="@dimen/activity_horizontal_margin" 
     app:layout_behavior="@string/appbar_scrolling_view_behavior"> 

     <LinearLayout 
      android:id="@+id/test1" 
      android:layout_gravity="fill_vertical" 
      android:layout_width="match_parent" 
      android:orientation="vertical" 
      android:layout_height="match_parent"> 

      <com.Custom.saving.widgets.CustomTextView 
       android:id="@+id/aop_data_overview_form_header" 
       android:gravity="center" 
       android:layout_width="wrap_content" 
       android:layout_height="match_parent" 
       android:paddingRight="@dimen/activity_horizontal_margin" 
       android:paddingLeft="@dimen/activity_horizontal_margin" 
       style="@style/AopHeader" 
       android:layout_marginBottom="@dimen/default_margin" 
       android:text="@string/is_your_data_correct_header" /> 

      <com.Custom.saving.widgets.CustomTextView 
       android:layout_marginTop="@dimen/default_margin" 
       android:paddingRight="@dimen/activity_horizontal_margin" 
       android:paddingLeft="@dimen/activity_horizontal_margin" 
       android:layout_height="wrap_content" 
       android:layout_width="wrap_content" 
       style="@style/TextViewGray" 
       android:textColor="#787878" 
       android:text="@string/aop_form_header"/> 

      <com.Custom.saving.widgets.CustomTextView 
       android:layout_marginTop="@dimen/default_margin" 
       android:paddingRight="@dimen/activity_horizontal_margin" 
       android:paddingLeft="@dimen/activity_horizontal_margin" 
       android:layout_width="wrap_content" 
       style="@style/AopBlueParagraph" 
       android:text="@string/aop_identity_data" 
       android:layout_height="wrap_content"/> 

      <android.support.v7.widget.CardView 
       android:id="@+id/card_view2" 
       android:layout_width="match_parent" 
       android:layout_marginTop="@dimen/activity_vertical_margin" 
       card_view:cardElevation="5dp" 
       android:background="@color/white" 
       android:gravity="center_horizontal" 
       card_view:cardCornerRadius="4dp" 
       android:layout_height="wrap_content"> 

       <LinearLayout 
        style="@style/ActivityContent" 
        android:paddingBottom="@dimen/activity_vertical_margin" 
        android:layout_width="match_parent" 
        android:layout_height="wrap_content" 
        android:gravity="center_horizontal" 
        android:orientation="vertical"> 

        <RadioGroup 
         android:layout_width="wrap_content" 
         android:layout_gravity="left" 
         android:orientation="horizontal" 
         android:layout_height="wrap_content"> 

         <RadioButton 
          android:layout_width="wrap_content" 
          android:layout_marginRight="@dimen/default_margin" 
          android:layout_height="wrap_content" 
          android:text="Man"/> 

         <RadioButton 
          android:layout_width="wrap_content" 
          android:layout_height="wrap_content" 
          android:text="Vrouw"/> 

        </RadioGroup> 


        <android.support.design.widget.TextInputLayout 
         android:layout_width="match_parent" 
         android:layout_marginTop="@dimen/small_margin" 
         app:hintTextAppearance="@style/TextInputLayoutStyle" 
         android:layout_height="wrap_content"> 

         <com.Custom.saving.widgets.CustomEditText 
          style="@style/Input" 
          android:layout_marginTop="@dimen/small_margin" 
          android:layout_width="match_parent" 
          android:layout_height="wrap_content" 
          android:hint="Voornaam"/> 

        </android.support.design.widget.TextInputLayout> 

        <android.support.design.widget.TextInputLayout 
         android:layout_width="match_parent" 
         app:hintTextAppearance="@style/TextInputLayoutStyle" 
         android:layout_marginTop="@dimen/small_margin" 
         android:layout_height="wrap_content"> 

         <com.Custom.saving.widgets.CustomEditText 
          style="@style/Input" 
          android:layout_marginTop="@dimen/small_margin" 
          android:layout_width="match_parent" 
          android:layout_height="wrap_content" 
          android:hint="Achternaam"/> 

        </android.support.design.widget.TextInputLayout> 

        <android.support.design.widget.TextInputLayout 
         android:layout_width="match_parent" 
         app:hintTextAppearance="@style/TextInputLayoutStyle" 
         android:layout_marginTop="@dimen/small_margin" 
         android:layout_height="wrap_content"> 

         <com.Custom.saving.widgets.CustomEditText 
          style="@style/Input" 
          android:layout_marginTop="@dimen/small_margin" 
          android:layout_width="match_parent" 
          android:layout_height="wrap_content" 
          android:hint="Achternaam"/> 

        </android.support.design.widget.TextInputLayout> 

        <android.support.design.widget.TextInputLayout 
         android:layout_width="match_parent" 
         app:hintTextAppearance="@style/TextInputLayoutStyle" 
         android:layout_marginTop="@dimen/small_margin" 
         android:layout_height="wrap_content"> 

         <com.Custom.saving.widgets.CustomEditText 
          style="@style/Input" 
          android:layout_marginTop="@dimen/small_margin" 
          android:layout_width="match_parent" 
          android:layout_height="wrap_content" 
          android:hint="Achternaam"/> 

        </android.support.design.widget.TextInputLayout> 
      </LinearLayout> 
     </android.support.v7.widget.CardView> 


     <com.Custom.saving.widgets.CustomTextView 
      android:layout_marginTop="@dimen/default_margin" 
      android:paddingRight="@dimen/activity_horizontal_margin" 
      android:paddingLeft="@dimen/activity_horizontal_margin" 
      android:layout_width="wrap_content" 
      style="@style/AopBlueParagraph" 
      android:text="@string/aop_identity_data" 
      android:layout_height="wrap_content"/> 
    </LinearLayout> 
</android.support.v4.widget.NestedScrollView> 
</android.support.design.widget.CoordinatorLayout> 

Also im Grunde habe ich eine Bar, das ist auf dem oberen Rand des Bildschirms kleben, wenn der Benutzer blättert durch den Inhalt. Welches ist eine Form, bestehend aus Karten mit Eingabeelementen. Die Symbolleiste macht Platz für diese Leiste beim Scrollen.

Das Problem ist, dass die NestedScrollview nicht die volle Höhe und hinterlässt einen großen Rand auf der Unterseite. Während der Inhalt in einer kleineren Ansicht noch gescrollt werden kann. Manchmal erweitert es sich, aber plötzlich bekommt es wieder einen Rand, sobald ich mit dem Editieren von Text in einem EditText beginne.

+0

Entfernen _android: clipToPadding = "false" _ für _NestedScrollView_ – Piyush

Antwort

5

Fügen Sie android:fillViewport="true" zu Ihrem NestedScrollView hinzu.

+1

Versuchte dies bereits, funktioniert leider nicht. –

0

android:fillViewport="true"-ScrollView und android:layout_height="wrap_content" zum LinearLayout hinzufügen, die eine sofortige Kind Ihrer ScrollView ist.

+2

. Leerraum auf der Unterseite bleibt bei dieser Lösung –