我们可以在recyclerview中调整物品的高度吗?

时间:2019-02-01 09:29:45

标签: java android android-recyclerview

我们可以在recyclerview中调整商品的高度(取决于商品内容的大小),还是所有recyclerview商品的尺寸都必须相同?

我的reciclerview工作正常,但是当内容太长时,某些内容项会被剪切。

我应该使用cardview做到这一点吗?

这是我的适配器类:

"ajax": {
            "url": "../Home/GetTaskLog",
            "type": 'POST',
            "content-type": "application/json; charset=utf-8",
            "processData": false,
            "dataType": "json",
            "headers": "headers",
            "data": "window.JSON.stringify(obj)",
            //"headers": { "__RequestVerificationToken": $('input[name=__RequestVerificationToken]').val() },
            //"data": { "__RequestVerificationToken": $('input[name=__RequestVerificationToken]').val() },
            "traditional": true,
            "dataSrc": function (data) {
                return JSON.parse(data);
            },
        },

2 个答案:

答案 0 :(得分:1)

是的,您需要做的就是使项目布局父容器wrap_content的高度(如果是水平滚动,则为宽度)。像这样:

  

list_item_layout

<?xml version="1.0" encoding="utf-8"?>
<FrameLayout
        xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        xmlns:app="http://schemas.android.com/apk/res-auto"
        android:layout_width="match_parent"
        <!-- here -->
        android:layout_height="wrap_content"
        tools:context=".MainActivity">

    <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Hello World!"
            app:layout_constraintBottom_toBottomOf="parent"
            app:layout_constraintLeft_toLeftOf="parent"
            app:layout_constraintRight_toRightOf="parent"
            app:layout_constraintTop_toTopOf="parent"/>

</FrameLayout>

最新的回收者视图库现在可以很好地处理包装内容,而且几乎没有任何错误。

答案 1 :(得分:0)

是的,您可以调整视图的大小。当数据已经在其特定视图上填充时,请在onBindViewHolder(..)期间使用Viewholder.view变量更改其高度。或者,您可以在xml中设置膨胀视图以使用wrap_content高度来包装其内容。