我是android开发的新手。我正在使用此库https://github.com/chthai64/SwipeRevealLayout在我的recyclerview上实现swipelayout。

但是,它只能滑动以打开和关闭,但是我想在滑动一个项目时实现,然后单击任何项​​目将关闭当前打开的项目。我只是不知道它是如何工作的。

[抱歉,如果我的主题问题与我所描述的不符,我不是英语母语人士。

我可以设置ViewBinderHelper.setOpenOnly(true)。一次只能滑动一个项目。我试着通过holder.swipelayout.isOpen测试swipelayout是打开还是关闭,但是它什么也没做。

任何想法或帮助将非常感谢,谢谢。

这是我的适配器类class ReturnAdapter(val context : Context , val deliveryinfo : MutableList) : RecyclerView.Adapter() {

private val viewbinderhelper = ViewBinderHelper()

init {

viewbinderhelper.setOpenOnlyOne(true)

}

override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): MyViewHolder {

val view=LayoutInflater.from(context).inflate(R.layout.return_model_layout, parent, false)

return MyViewHolder(view)

}

override fun getItemCount(): Int {

return deliveryinfo.size

}

override fun onBindViewHolder(holder: MyViewHolder, position: Int) {

val deliveryinformation = deliveryinfo[position]

holder.setData(deliveryinformation)

viewbinderhelper.bind(holder.swipelayout, deliveryinformation.booking_id.toString())

}

inner class MyViewHolder(itemView:View):RecyclerView.ViewHolder(itemView) {

val swipelayout : SwipeRevealLayout =

itemView.findViewById(R.id.swipelayout)

}

我的XML文件<?xml version="1.0" encoding="utf-8"?>

xmlns:android="http://schemas.android.com/apk/res/android"

android:layout_width="match_parent"

xmlns:app="http://schemas.android.com/apk/res-auto"

app:mode="same_level"

app:dragEdge="right"

android:id="@+id/swipelayout">

android:id="@+id/deletereturn"

android:layout_height="match_parent"

android:orientation="vertical"

android:clickable="true"

android:foreground="?

android:attr/selectableItemBackground"

android:gravity="center"

android:background="@color/red">

android:src="@drawable/ic_delete_white_36dp"/>

android:layout_height="wrap_content"

android:orientation="horizontal"

android:layout_marginHorizontal="30dp"

android:gravity="center"

android:layout_centerVertical="true">

android:layout_width="36dp"

android:layout_gravity="center"

android:layout_height="36dp"

android:id="@+id/packaging"

android:src="@drawable/redmarkcheck"

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐