2016-06-21 39 views
2

我正面臨着在CoordinatorLayout內部實施NestedScrollview的問題。請參見下面的佈局代碼:嵌套的滾動視圖不會佔用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> 

所以基本上我有一個酒吧這就是粘在屏幕的頂部時,通過內容的用戶滾動。這是一種由帶有輸入元素的卡組成的表單。滾動條上的工具欄讓位於該欄。

問題是,NestedScrollview不佔用全部高度,並在底部留下大量餘量。儘管內容仍然可以在較小的視圖中滾動。有時它會擴展,但是一旦我開始編輯EditText中的文本,突然間又會恢復一個頁邊距。

+0

刪除_android:clipToPadding =「false」_ for _NestedScrollView_ – Piyush

回答

5

android:fillViewport="true"添加到您的NestedScrollView

+1

嘗試過這一點,不起作用。 –

0

android:fillViewport="true"添加到ScrollViewandroid:layout_height="wrap_content"LinearLayout這是您的ScrollView的直接子節點。

+2

。底部的空白空間保留此解決方案 –

相關問題