0

我是Android開發新手。我正在使用回收站視圖來顯示列表。我認爲它具有滾動的默認行爲,但沒有發生。任何人都可以給我一些建議。以下是我正在使用的佈局。Android RecyclerView滾動問題

<?xml version="1.0" encoding="utf-8"?> 
<android.support.design.widget.CoordinatorLayout 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:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:fitsSystemWindows="true" 
    android:background="@android:color/transparent" 
    tools:context="com.team.sidhesh.MainActivity"> 

    <android.support.design.widget.AppBarLayout 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:background="@drawable/background" 
     android:theme="@style/AppTheme.AppBarOverlay"> 

     <android.support.v7.widget.Toolbar 
      android:id="@+id/toolbar" 
      android:layout_width="match_parent" 
      android:layout_height="?attr/actionBarSize" 
      app:popupTheme="@style/AppTheme.PopupOverlay" /> 

     <ImageView 
      android:id="@+id/sliderTempImageView" 
      android:layout_width="match_parent" 
      android:layout_height="@dimen/slider_image_height" 
      android:src="@drawable/homescreen_logo" 
      android:scaleType="fitCenter" 
      android:background="@android:color/transparent"/> 

     <android.support.v7.widget.RecyclerView 
      android:id="@+id/recycler_view" 
      android:background="@android:color/transparent" 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:scrollbars="vertical" 
      android:paddingBottom="10dp"/> 

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

</android.support.design.widget.CoordinatorLayout> 
+0

有時出現這種情況是由於您使用的是您的ImageView的可繪製。 drawables不應該很大 –

回答

0

試試這個:

<?xml version="1.0" encoding="utf-8"?> 
<android.support.design.widget.CoordinatorLayout 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:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:fitsSystemWindows="true" 
    android:background="@android:color/transparent" 
    tools:context="com.team.sidhesh.MainActivity"> 

    <android.support.design.widget.AppBarLayout 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:background="@drawable/background" 
     android:theme="@style/AppTheme.AppBarOverlay"> 

     <android.support.v7.widget.Toolbar 
      android:id="@+id/toolbar" 
      android:layout_width="match_parent" 
      android:layout_height="?attr/actionBarSize" 
      app:popupTheme="@style/AppTheme.PopupOverlay" /> 

     <ImageView 
      android:id="@+id/sliderTempImageView" 
      android:layout_width="match_parent" 
      android:layout_height="@dimen/slider_image_height" 
      android:src="@drawable/homescreen_logo" 
      android:scaleType="fitCenter" 
      android:background="@android:color/transparent"/> 

     <android.support.v4.widget.NestedScrollView 
      android:layout_width="match_parent" 
      android:layout_height="470dp" 
      android:layout_weight="1" 
      android:background="@android:color/darker_gray" 
      app:layout_behavior="@string/appbar_scrolling_view_behavior"> 
     <android.support.v7.widget.RecyclerView 
      android:id="@+id/recycler_view" 
      android:background="@android:color/transparent" 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:scrollbars="vertical" 
      android:paddingBottom="10dp"/> 
     </android.support.v4.widget.NestedScrollView> 
    </android.support.design.widget.AppBarLayout> 

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

另外,還要確保你在你的gradle這個文件中添加依賴

compile 'com.android.support:recyclerview-v7:22.2.0' 
0

你爲什麼要使用在AppBarLayoutRecyclerView?它不應該在CoordinatorLayout以及AppBarLayout以外嗎?

爲了達到你所期望的,檢查此鏈接:https://developer.android.com/reference/android/support/design/widget/AppBarLayout.html

這都說明/說:<!-- Your scrolling content -->

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

     <!-- Your scrolling content --> 

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

所以你需要把AppBarLayoutRecyclerView外面再補充:應用程序: layout_behavior =「@ string/appbar_scrolling_view_behavior」到RecyclerView。我已將AppBarLayoutlayout_height設置爲wrap_content

<?xml version="1.0" encoding="utf-8"?> 
<android.support.design.widget.CoordinatorLayout 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:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:background="@android:color/transparent" 
    android:fitsSystemWindows="true" 
    tools:context="com.team.sidhesh.MainActivity"> 

    <android.support.design.widget.AppBarLayout 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:background="@drawable/background" 
     android:theme="@style/AppTheme.AppBarOverlay"> 

     <android.support.v7.widget.Toolbar 
      android:id="@+id/toolbar" 
      android:layout_width="match_parent" 
      android:layout_height="?attr/actionBarSize" 
      app:popupTheme="@style/AppTheme.PopupOverlay" /> 

     <ImageView 
      android:id="@+id/sliderTempImageView" 
      android:layout_width="match_parent" 
      android:layout_height="@dimen/slider_image_height" 
      android:background="@android:color/transparent" 
      android:scaleType="fitCenter" 
      android:src="@drawable/homescreen_logo" /> 

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

    <android.support.v7.widget.RecyclerView 
     android:id="@+id/recycler_view" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:background="@android:color/transparent" 
     android:paddingBottom="10dp" 
     android:scrollbars="vertical" 
     app:layout_behavior="@string/appbar_scrolling_view_behavior" /> 

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

什麼是ImageView一回事呢?使用滑塊?那麼也許你需要把它放在一起CollapsingToolbarLayout