2

在我的應用程序中,我首先使用cardview,然後使用RecyclerView。 使用我現有的代碼,我可以滾動整個頁面。但我希望我也可以只滾動卡片視圖項目。目前,當我嘗試滾動cardview時,完整的佈局會滾動。在cardView + RecyclerView佈局中的Android滾動功能

Picture

我當前的代碼: -

<android.support.design.widget.AppBarLayout 
    android:id="@+id/app_bar_layout" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:fitsSystemWindows="true" 
    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:layout_scrollFlags="scroll|exitUntilCollapsed" 
     app:contentScrim="?attr/colorPrimary" 
     app:expandedTitleMarginStart="48dp" 
     app:expandedTitleMarginEnd="64dp" 
     android:fitsSystemWindows="true"> 

     <android.support.v7.widget.CardView style="@style/Card"> 

      <LinearLayout style="@style/CardContainer" 
       android:isScrollContainer="true"> 


        <com.greenfrvr.hashtagview.HashtagView 
         android:id="@+id/hashtags6" 
         style="@style/HashtagView" 
         app:rowGravity="center" 
         app:rowMode="stretch" 
         app:selectionMode="true" 
         app:tagBackground="@drawable/item_bg_1" 
         app:tagForeground="@drawable/flat_button_light" 
         app:tagPaddingBottom="@dimen/padding_vertical" 
         app:tagPaddingLeft="@dimen/padding_horizontal" 
         app:tagPaddingRight="@dimen/padding_horizontal" 
         app:tagPaddingTop="@dimen/padding_vertical" 
         app:tagTextColor="#E5E5E5" /> 



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




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

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


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




    <android.support.v7.widget.RecyclerView 
    android:id="@+id/list" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    app:layout_behavior="@string/appbar_scrolling_view_behavior" /> 

+0

嘗試刪除滾動標誌。這樣你的AppBar將被修復,因此你的回收者視圖不會移動 –

+0

我不希望我的回收站視圖停止滾動。我jist想讓我的卡片視圖滾動,如果我向下滾動cardview的位置 –

回答

3

儘管谷歌強調建議避免讓卡滾動(請參閱本文https://material.google.com/components/cards.html#cards-behavior

您真正需要做的就是用ScrollView包裝卡片的內容。

https://developer.android.com/reference/android/widget/ScrollView.html

如果您的設計允許的話,我建議你在一個可擴展它與合同被點擊時,它在卡的底部放置一個操作按鈕。

+0

我沒有強制使用卡片視圖。我只想讓我的HastTagView(這是一個textview)能夠滾動而不是增加textview的高度。 –

+1

然後只需將滾動視圖內的hastagview包裝起來。雖然你的hashtagview將有其全尺寸,但可見部分將由滾動視圖的大小決定。因此,您可以通過更改滾動視圖的高度來決定視圖的可見部分。我希望這有助於:) –

+0

所以我只是刪除cardview元素和其餘的代碼是好的 –

相關問題