cardView后面的RecyclerView可以单击,但不应该单击

问题描述 投票:0回答:2

我有一个cardview,后面有一个“建议的联系人”的recyclerview,很像android中的默认拨号器。 CardView放置在屏幕的底部,约占屏幕的70%,而RecyclerView将其高度扩展到match_parent。滚动RecyclerView时,CardView消失并显示整个列表。

用户可以单击RecyclerView的一项来直接拨打电话。问题是CardView后面的项目对用户不可见,也可以单击。

我如何拥有只能单击才能看到的RecyclerView项目? (即,在cardView可见时)

xml代码:

<ScrollView
        android:id="@+id/sv_suggested_contacts"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:onClick="expandSuggestions">

        <androidx.recyclerview.widget.RecyclerView
            android:id="@+id/rv_suggested_contacts"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"/>

    </ScrollView>

    <androidx.cardview.widget.CardView
        android:id="@+id/dialer_card_view"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        app:cardElevation="8dp">

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

[...]
android android-recyclerview cardview
2个回答
0
投票

您可以将(setVisibility(View.GONE)项目隐藏在回收站后面,或将其设置为不可点击


0
投票

我假设您的要求是,卡片视图应阻止所有点击,以使下面的项目不会获得点击权限。

[如果是这种情况,并且您确定证卡视图位于recyclerview的顶部,您只需要在证卡视图上设置onClickListener并在其中进行任何操作即可。基本上是空点击。

或者您可以在xml中为cardview添加

android:onClick="nullClick"

并在活动中创建空函数

public void nullClick(View view) {
}

无论您喜欢哪种方式。

© www.soinside.com 2019 - 2024. All rights reserved.