【问题标题】:RecycleView onclick not work for first item while set height to match_parentRecyclerView onclick 在将高度设置为 match_parent 时不适用于第一项
【发布时间】:2019-09-05 13:20:01
【问题描述】:

我的项目中有recycleView。我有一个图像视图(处理类似操作),当我想喜欢我的帖子时点击它,当我想不喜欢我的帖子时,只需点击我的第一个项目。 我将我的项目的高度更改为匹配父项,它适用于其余项目。但我的观点是匹配父级,布局外观不好。 这是我的 xml:

<RelativeLayout 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:layout_marginEnd="2dp"
    android:layout_marginStart="2dp"
    android:layout_marginTop="2dp"

    >


    <ImageView
        android:id="@+id/imageView"
        android:layout_width="match_parent"
        android:layout_height="180dp"
        android:layout_alignParentStart="true"
        android:layout_alignParentTop="true"
        android:adjustViewBounds="true"
        android:background="?attr/selectableItemBackgroundBorderless"
        android:clickable="false"
        android:maxHeight="160dp"
        android:scaleType="centerCrop" />

    <View
        android:layout_width="match_parent"
        android:layout_height="180dp"
        android:background="@drawable/gradient_background" />


    <TextView
        android:id="@+id/post_title"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentRight="true"
        android:ellipsize="marquee"
        android:gravity="right"
        android:maxLines="2"
        android:paddingBottom="4dp"
        android:paddingLeft="16dp"
        android:paddingRight="16dp"
        android:paddingTop="16dp"
        android:shadowColor="@color/text_shadow"
        android:shadowDx="1"
        android:shadowDy="1"
        android:shadowRadius="2"
        android:textColor="@color/white"
        android:textSize="18sp"
        tools:text="Title" />

    <TextView
        android:id="@+id/post_category"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentRight="true"
        android:layout_below="@id/post_title"
        android:paddingBottom="4dp"
        android:paddingEnd="16dp"
        android:paddingStart="16dp"
        android:shadowColor="@color/text_shadow"
        android:shadowDx="1"
        android:shadowDy="1"
        android:shadowRadius="2"
        android:textAllCaps="true"
        android:textColor="@android:color/white"
        android:textSize="14sp"
        tools:text="Hello World" />


    <ProgressBar
        android:id="@+id/progress"
        style="@android:style/Widget.DeviceDefault.Light.ProgressBar.Small"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerInParent="true"
        android:visibility="visible"
        tools:visibility="visible" />

    <LinearLayout
        android:id="@+id/actions_ll"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignBottom="@id/imageView"
        android:layout_alignParentRight="true"
        android:gravity="start"
        android:orientation="horizontal">


        <ImageView
            android:id="@+id/share_button"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center_vertical"
            android:padding="16dp"
            android:tint="@android:color/white"
            app:srcCompat="@drawable/ic_share" />

        <ImageView
            android:id="@+id/like"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center_vertical"
            android:padding="16dp"
            />

    </LinearLayout>

</RelativeLayout>

如果我把 wrap_content ,它不能正常工作,只有第一个项目是可点击的。 有什么想法吗?

【问题讨论】:

    标签: java android android-recyclerview onclicklistener


    【解决方案1】:

    在适配器视图中,您应该始终将宽度保持为 wrap_content。如果您仍然需要宽度为 match_parent,请用可理解的文字发表您的问题。

    【讨论】:

    • 虽然将高度设置为 wrap_cotent ,但我的图像视图根本没有点击。(设置高度而不是宽度)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-05-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多