【问题标题】:Recycler view inside Card view卡片视图内的回收站视图
【发布时间】:2018-05-30 23:13:21
【问题描述】:

我正在尝试在卡片视图中添加 ryclerview,以便在卡片中包含项目列表。问题是卡片内的列表现在不可滚动。
这是我的代码:

 <android.support.v7.widget.CardView
        android:id="@+id/card"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginEnd="8dp"
        android:layout_marginStart="8dp"
        android:layout_marginTop="8dp"">

        <android.support.v7.widget.RecyclerView
            android:id="@+id/records"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_margin="8dp" />

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

我尝试更改layout_width和height,没有结果并设置recyclerView.setHasFixedSize(true);

【问题讨论】:

  • 你的嵌套recyclerview的方向是什么?并在 xml 文件中给它一个固定的高度
  • 试试 android.support.v4.widget.NestedScrollView 这将是你的回收站视图的父级
  • 您的卡片视图是在任何其他滚动视图中还是您的整个布局?
  • 我的卡片视图位于约束布局内,带有另一张卡片。所以recycler view里面的卡片不能是match_parent

标签: android android-recyclerview android-cardview


【解决方案1】:

您的卡片视图高度是包装内容,您的回收商也是如此。这将导致卡片视图与您的回收站视图具有相同的高度。

因此它将始终与列表一样大,并且永远不会有任何滚动。尝试将卡片视图高度更改为 match_parent

如果您的卡片视图也在另一个滚动布局中,请在最外面的布局中将卡片视图添加到 NestedScrollView。在这种情况下,不要更改卡片视图高度以匹配父级。保持它包装内容。

【讨论】:

    【解决方案2】:

    我假设您只想出于视觉原因(海拔等)使用卡片视图。在这种情况下,您可以自定义回收站视图,使其看起来像卡片视图,而不是在其中使用。有一些例子link

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-09-10
      • 2016-09-22
      • 1970-01-01
      相关资源
      最近更新 更多