2016-09-25 143 views
0

我gridview不滾動。我在gridview中有10個項目,但只有6個顯示,並在底部的一些項目中斷。無法滾動GridView嵌入嵌套滾動視圖

這裏是GridView控件的佈局:

<?xml version="1.0" encoding="utf-8"?> 

<android.support.design.widget.AppBarLayout 
    android:layout_width="match_parent" 
    android:id="@+id/appbar_layout" 
    android:layout_height="@dimen/app_bar_height" 
    android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"> 

    <android.support.design.widget.CollapsingToolbarLayout 
     android:id="@+id/collapsing_toolbar" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     app:contentScrim="?attr/colorPrimary" 
     app:expandedTitleMarginStart="@dimen/expanded_toolbar_title_margin_start" 
     app:layout_scrollFlags="scroll|exitUntilCollapsed"> 

     <ImageView 
      android:id="@+id/image_view" 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:scaleType="centerInside" 
      android:src="@drawable/yelp" 
      app:layout_collapseMode="parallax" 
      app:layout_collapseParallaxMultiplier="0.7" /> 

     <android.support.v7.widget.Toolbar 
      android:id="@+id/toolbar" 
      android:layout_width="match_parent" 
      android:layout_height="?attr/actionBarSize" 
      app:layout_collapseMode="pin" 
      app:popupTheme="@style/ThemeOverlay.AppCompat.Light" 
      app:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar" /> 

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

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

<android.support.v4.widget.NestedScrollView 
    android:layout_width="match_parent" 
    android:id="@+id/nestedscrollview" 
    android:layout_height="match_parent" 
    android:fillViewport="true" 
    app:layout_behavior="@string/appbar_scrolling_view_behavior"> 

    <RelativeLayout 
     android:id="@+id/gridContainerLayout" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     > 


     <GridView 
      android:id="@+id/grid" 
      android:layout_width="wrap_content" 
      android:layout_height="match_parent" 
      android:columnWidth="100dp" 
      android:gravity="center" 
      android:listSelector="#00000000" 
      android:numColumns="auto_fit" 
      android:stretchMode="columnWidth" 
      /> 

     <ProgressBar 
      android:id="@+id/progressBar1" 
      style="?android:attr/progressBarStyleLarge" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_centerHorizontal="true" /> 

    </RelativeLayout> 
</android.support.v4.widget.NestedScrollView> 

這裏有兩張照片的問題。當我向上滾動它推動yelp圖像,但它不會執行gridview上的嵌套滾動,爲什麼?

enter image description here

enter image description here

UPDATE: 我也試着這樣做:

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { 
      mGridView.setNestedScrollingEnabled(true); 
     } 

,並開始着手API棒棒糖。但我需要它也可以在較舊的設備上運行。爲什麼不在棒棒糖之前在設備上滾動?

回答

1

您可以使用RecyclerView和GridLayout來代替GridView。然後禁用嵌套滾動,可以在前棒棒糖版本上完成。