到达底部时,RecyclerView物品会倒塌

时间:2019-04-03 03:11:08

标签: android android-recyclerview

我的recyclerview需要帮助,我创建了recyclerview显示一些项目列表,但是当在recyclerview下的imageView设置有图像时,我的recyclerview折叠并且仅隐藏显示的1行项目,当屏幕满时如何使recyclerview不折叠适合。

我尝试了一下,但仍然崩溃

listViewPart.setNestedScrollingEnabled(false);
listViewPart.setLayoutFrozen(true);

这是我的布局

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 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:orientation="vertical"
    tools:context=".ReceiveActivity">

    <ScrollView
        android:layout_width="match_parent"
        android:layout_height="wrap_content">

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="vertical">

            <GridLayout
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:columnCount="2"
                android:rowCount="3"
                android:background="@color/colorAccent">

                <TextView
                    android:padding="10dp"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:layout_row="1"
                    android:layout_columnSpan="2"
                    android:id="@+id/customerNewName"
                    android:text="Ujang - 62763582738"
                    android:textSize="16dp"
                    android:textStyle="bold"
                    android:textColor="#FFFFFF"/>

                <TextView
                    android:padding="10dp"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_row="2"
                    android:layout_column="0"
                    android:layout_gravity="fill_horizontal"
                    android:id="@+id/txtNewMobil"
                    android:text="Honda Mobillio RS - Putih - 2015"
                    android:textSize="14dp"
                    android:textColor="#FFFFFF"/>

                <TextView
                    android:paddingRight="10dp"
                    android:gravity="right"
                    android:layout_gravity="fill_horizontal"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_row="2"
                    android:layout_column="1"
                    android:id="@+id/txtNewPlat"
                    android:text="B 6725 SG"
                    android:textSize="14dp"
                    android:textColor="#FFFFFF"/>

            </GridLayout>

            <GridLayout
                android:paddingTop="15dp"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:columnCount="1"
                android:rowCount="1">

                <TextView
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_row="0"
                    android:layout_column="0"
                    android:layout_gravity="fill"
                    android:text="Delivery Person"
                    android:textSize="13dp"
                    android:paddingLeft="10dp"
                    android:layout_columnWeight="1"
                    android:gravity="left"
                    android:textStyle="bold"/>

            </GridLayout>

            <GridLayout
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:columnCount="2"
                android:rowCount="9">

                <TextView
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_row="0"
                    android:layout_column="0"
                    android:layout_gravity="fill"
                    android:text="Name"
                    android:textSize="12dp"
                    android:padding="10dp"
                    android:layout_columnWeight="1"
                    android:gravity="left"/>

                <EditText
                    android:id="@+id/txtNewName"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_row="0"
                    android:layout_column="1"
                    android:layout_gravity="fill_horizontal"
                    android:backgroundTint="@color/black_overlay"
                    android:layout_columnWeight="1"/>

                <TextView
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_row="1"
                    android:layout_column="0"
                    android:layout_gravity="fill"
                    android:text="Title"
                    android:textSize="12dp"
                    android:padding="10dp"
                    android:layout_columnWeight="1"
                    android:gravity="left"/>

                <EditText
                    android:id="@+id/txtNewTitle"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_row="1"
                    android:layout_column="1"
                    android:layout_gravity="fill_horizontal"
                    android:backgroundTint="@color/black_overlay"
                    android:layout_columnWeight="1"/>

                <TextView
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_row="2"
                    android:layout_column="0"
                    android:layout_gravity="fill"
                    android:text="Email"
                    android:textSize="12dp"
                    android:padding="10dp"
                    android:layout_columnWeight="1"
                    android:gravity="left"/>

                <EditText
                    android:id="@+id/txtNewEmail"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_row="2"
                    android:layout_column="1"
                    android:layout_gravity="fill_horizontal"
                    android:backgroundTint="@color/black_overlay"
                    android:layout_columnWeight="1"/>

                <TextView
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_row="3"
                    android:layout_column="0"
                    android:layout_gravity="fill"
                    android:text="STNK Exp Date"
                    android:textSize="12dp"
                    android:padding="10dp"
                    android:layout_columnWeight="1"
                    android:gravity="left"/>

                <EditText
                    android:id="@+id/stnkExpDate"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_row="3"
                    android:layout_column="1"
                    android:focusableInTouchMode="false"
                    android:layout_gravity="fill_horizontal"
                    android:backgroundTint="@color/black_overlay"
                    android:layout_columnWeight="1"/>

                <TextView
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_row="4"
                    android:layout_column="0"
                    android:layout_gravity="fill"
                    android:text="STNK (Tax Notice)"
                    android:textSize="12dp"
                    android:padding="10dp"
                    android:layout_columnWeight="1"
                    android:gravity="left"/>

                <EditText
                    android:id="@+id/stnkTaxDate"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_row="4"
                    android:layout_column="1"
                    android:focusableInTouchMode="false"
                    android:layout_gravity="fill_horizontal"
                    android:backgroundTint="@color/black_overlay"
                    android:layout_columnWeight="1"/>

                <TextView
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_row="5"
                    android:layout_column="0"
                    android:layout_gravity="fill"
                    android:text="KM"
                    android:textSize="12dp"
                    android:padding="10dp"
                    android:layout_columnWeight="1"
                    android:gravity="left"/>

                <EditText
                    android:id="@+id/km"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_row="5"
                    android:layout_column="1"
                    android:layout_gravity="fill_horizontal"
                    android:backgroundTint="@color/black_overlay"
                    android:layout_columnWeight="1"/>

                <TextView
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_row="6"
                    android:layout_column="0"
                    android:layout_gravity="fill"
                    android:text="Asset Condition"
                    android:textSize="12dp"
                    android:padding="10dp"
                    android:layout_columnWeight="1"
                    android:gravity="left"/>

                <EditText
                    android:id="@+id/assetCondition"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_row="6"
                    android:layout_column="1"
                    android:inputType="text|textMultiLine"
                    android:layout_gravity="fill_horizontal"
                    android:backgroundTint="@color/black_overlay"
                    android:layout_columnWeight="1"/>

                <TextView
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_row="7"
                    android:layout_column="0"
                    android:layout_gravity="fill"
                    android:text="Foto KTP"
                    android:textSize="12dp"
                    android:padding="10dp"
                    android:layout_columnWeight="1"
                    android:gravity="left"/>

                <ImageButton
                    android:id="@+id/cmrNewKtp"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_row="7"
                    android:layout_columnWeight="1"
                    android:layout_gravity="fill"
                    android:layout_column="1"
                    android:src="@drawable/ic_menu_camera"/>

                <ImageView
                    android:id="@+id/txtNewcmrKtp"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_row="8"
                    android:layout_columnWeight="1"
                    android:layout_gravity="fill"
                    android:layout_column="1"
                    android:visibility="invisible"/>

            </GridLayout>

            <GridLayout
                android:paddingTop="15dp"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:columnCount="3"
                android:rowCount="2">

                <TextView
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_row="1"
                    android:layout_column="0"
                    android:text="Part"
                    android:textSize="13dp"
                    android:layout_columnWeight="1"
                    android:gravity="center"
                    android:layout_gravity="fill"
                    android:textStyle="bold"/>

                <TextView
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_row="1"
                    android:layout_column="1"
                    android:layout_gravity="fill"
                    android:text="Checked"
                    android:textSize="13dp"
                    android:layout_columnWeight="1"
                    android:gravity="center"
                    android:textStyle="bold"/>

                <TextView
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_row="1"
                    android:layout_column="2"
                    android:text="Note"
                    android:textSize="13dp"
                    android:gravity="center"
                    android:layout_gravity="fill"
                    android:layout_columnWeight="1"
                    android:textStyle="bold"/>

            </GridLayout>


            <android.support.v7.widget.RecyclerView
                xmlns:android="http://schemas.android.com/apk/res/android"
                android:id="@+id/part_new_receive"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_centerHorizontal="true"
                android:layout_centerVertical="true" />


            <GridLayout
                android:paddingTop="15dp"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:columnCount="2"
                android:rowCount="1">

                <TextView
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_row="0"
                    android:layout_column="0"
                    android:text="Foto"
                    android:textSize="13dp"
                    android:layout_columnWeight="1"
                    android:gravity="center"
                    android:layout_gravity="fill"
                    android:textStyle="bold"/>

                <TextView
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_row="0"
                    android:layout_column="1"
                    android:layout_gravity="fill"
                    android:text="Capture"
                    android:textSize="13dp"
                    android:layout_columnWeight="1"
                    android:gravity="center"
                    android:textStyle="bold"/>


            </GridLayout>

            <GridLayout
                android:paddingTop="15dp"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:columnCount="2"
                android:rowCount="10">

                <TextView
                    android:layout_width="0dp"
                    android:layout_height="wrap_content"
                    android:paddingLeft="10dp"
                    android:paddingTop="15dp"
                    android:minWidth="110dp"
                    android:layout_row="0"
                    android:layout_column="0"
                    android:layout_columnWeight="1"
                    android:text="Sisi Depan"
                    android:layout_gravity="fill_horizontal"
                    android:id="@+id/txtQueCam1"/>

                <ImageView
                    android:paddingTop="15dp"
                    android:layout_width="0dp"
                    android:layout_height="wrap_content"
                    android:src="@drawable/ic_menu_camera"
                    android:layout_row="0"
                    android:layout_columnWeight="1"
                    android:layout_column="1"
                    android:layout_gravity="fill_horizontal"
                    android:foregroundGravity="center"
                    android:id="@+id/imgCamera1"/>

                <ImageView
                    android:paddingTop="10dp"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_row="1"
                    android:layout_column="1"
                    android:layout_columnWeight="1"
                    android:layout_gravity="fill"
                    android:id="@+id/viewFoto1"
                    android:visibility="invisible"/>

                <TextView
                    android:layout_width="0dp"
                    android:layout_height="wrap_content"
                    android:paddingLeft="10dp"
                    android:paddingTop="15dp"
                    android:minWidth="110dp"
                    android:layout_row="2"
                    android:layout_column="0"
                    android:layout_columnWeight="1"
                    android:text="Sisi Samping Kanan"
                    android:layout_gravity="fill_horizontal"
                    android:id="@+id/txtQueCam2"/>

                <ImageView
                    android:paddingTop="15dp"
                    android:layout_width="0dp"
                    android:layout_height="wrap_content"
                    android:src="@drawable/ic_menu_camera"
                    android:layout_row="2"
                    android:layout_columnWeight="1"
                    android:layout_column="1"
                    android:layout_gravity="fill_horizontal"
                    android:foregroundGravity="center"
                    android:id="@+id/imgCamera2"/>

                <ImageView
                    android:paddingTop="10dp"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_row="3"
                    android:layout_column="1"
                    android:layout_columnWeight="1"
                    android:layout_gravity="fill"
                    android:id="@+id/viewFoto2"
                    android:visibility="invisible"/>

                <TextView
                    android:layout_width="0dp"
                    android:layout_height="wrap_content"
                    android:paddingLeft="10dp"
                    android:paddingTop="15dp"
                    android:minWidth="110dp"
                    android:layout_row="4"
                    android:layout_column="0"
                    android:layout_columnWeight="1"
                    android:text="Sisi Samping Kiri"
                    android:layout_gravity="fill_horizontal"
                    android:id="@+id/txtQueCam3"/>

                <ImageView
                    android:paddingTop="15dp"
                    android:layout_width="0dp"
                    android:layout_height="wrap_content"
                    android:src="@drawable/ic_menu_camera"
                    android:layout_row="4"
                    android:layout_columnWeight="1"
                    android:layout_column="1"
                    android:layout_gravity="fill_horizontal"
                    android:foregroundGravity="center"
                    android:id="@+id/imgCamera3"/>

                <ImageView
                    android:paddingTop="10dp"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_row="5"
                    android:layout_column="1"
                    android:layout_columnWeight="1"
                    android:layout_gravity="fill"
                    android:id="@+id/viewFoto3"
                    android:visibility="invisible"/>

                <TextView
                    android:layout_width="0dp"
                    android:layout_height="wrap_content"
                    android:paddingLeft="10dp"
                    android:paddingTop="15dp"
                    android:minWidth="110dp"
                    android:layout_row="6"
                    android:layout_column="0"
                    android:layout_columnWeight="1"
                    android:text="Sisi Belakang"
                    android:layout_gravity="fill_horizontal"
                    android:id="@+id/txtQueCam4"/>

                <ImageView
                    android:paddingTop="15dp"
                    android:layout_width="0dp"
                    android:layout_height="wrap_content"
                    android:src="@drawable/ic_menu_camera"
                    android:layout_row="6"
                    android:layout_columnWeight="1"
                    android:layout_column="1"
                    android:layout_gravity="fill_horizontal"
                    android:foregroundGravity="center"
                    android:id="@+id/imgCamera4"/>

                <ImageView
                    android:paddingTop="10dp"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_row="7"
                    android:layout_column="1"
                    android:layout_columnWeight="1"
                    android:layout_gravity="fill"
                    android:id="@+id/viewFoto4"
                    android:visibility="invisible"/>

                <TextView
                    android:layout_width="0dp"
                    android:layout_height="wrap_content"
                    android:paddingLeft="10dp"
                    android:paddingTop="15dp"
                    android:minWidth="110dp"
                    android:layout_row="8"
                    android:layout_column="0"
                    android:layout_columnWeight="1"
                    android:text="Dashboard"
                    android:layout_gravity="fill_horizontal"
                    android:id="@+id/txtQueCam5"/>

                <ImageView
                    android:paddingTop="15dp"
                    android:layout_width="0dp"
                    android:layout_height="wrap_content"
                    android:src="@drawable/ic_menu_camera"
                    android:layout_row="8"
                    android:layout_columnWeight="1"
                    android:layout_column="1"
                    android:layout_gravity="fill_horizontal"
                    android:foregroundGravity="center"
                    android:id="@+id/imgCamera5"/>

                <ImageView
                    android:paddingTop="10dp"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_row="9"
                    android:layout_column="1"
                    android:layout_columnWeight="1"
                    android:layout_gravity="fill"
                    android:id="@+id/viewFoto5"
                    android:visibility="invisible"/>

            </GridLayout>

            <GridLayout
                android:paddingTop="15dp"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:columnCount="2"
                android:rowCount="1">

                <Button
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:text="Submit"
                    style="@style/DefaultSubmitButton"
                    android:layout_column="0"
                    android:layout_row="0"
                    android:layout_columnWeight="1"
                    android:layout_gravity="fill"
                    android:id="@+id/receivesimpan"/>

                <Button
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:text="Cancel"
                    style="@style/DefaultButtonCancel"
                    android:layout_column="1"
                    android:layout_row="0"
                    android:layout_columnWeight="1"
                    android:layout_gravity="fill"
                    android:id="@+id/receiveCancel"/>

            </GridLayout>

        </LinearLayout>

    </ScrollView>

</LinearLayout>

此物品回收站视图

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="vertical">

    <GridLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:columnCount="3"
        android:rowCount="1">

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:id="@+id/idPart_"
            android:layout_column="0"
            android:layout_row="0"
            android:visibility="gone"
            />

        <TextView
            android:paddingLeft="10dp"
            android:paddingTop="10dp"
            android:minWidth="105dp"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:id="@+id/partQue"
            android:layout_columnWeight="1"
            android:layout_gravity="fill_horizontal"
            android:layout_column="0"
            android:layout_row="0"
            />

        <CheckBox
            android:id="@+id/partChk"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_columnWeight="1"
            android:layout_gravity="fill_horizontal"
            android:layout_column="1"
            android:layout_row="0"
            android:gravity="center"
            android:buttonTint="@color/black_overlay"
            />

        <EditText
            android:id="@+id/partEdt"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_columnWeight="1"
            android:layout_gravity="fill_horizontal"
            android:layout_column="2"
            android:layout_row="0"
            android:hint="-"
            android:backgroundTint="@color/black_overlay"/>

    </GridLayout>

</LinearLayout>

3 个答案:

答案 0 :(得分:1)

我相信您不应将Recyclerview放在ScrollView中。

  

使用NestedScrollView而不是ScrollView

     

请通过NestedScrollView reference document了解更多信息   信息。

     

并将recyclerView.setNestedScrollingEnabled(false);添加到您的   RecyclerView

让我知道这是否对您有用。

答案 1 :(得分:0)

尝试使用NestedScrollView,将NestedScrollView替换为ScrollView。

https://developer.android.com/reference/android/support/v4/widget/NestedScrollView

答案 2 :(得分:0)

问题是您在android:layout_height="wrap_content"中输入了ImageViews。您应该将此高度固定为一个恒定值,也可以将RecyclerView的高度固定为android:layout_below="@+id/part_new_receive"