我在我的应用程序和界面中使用多个recyclerview适配器来监听onclick。现在我有两个片段,它们只在另一个类中显示完全相同的视图和数据。但是适配器中的clicklistener绑定到第一个类,因此不接受第二个类值。
这是更合理的代码。
class ContactsAdapter(
var listVar: RealmResults<SchemeContacts>?,
val autoUpdate: Boolean,
val cellClickListener: ContactsList
) : RealmRecyclerViewAdapter<SchemeContacts, ChatsAdapter.DataHolder>(listVar, autoUpdate)...
我在下面的类联系人列表中使用它。
layoutManager = LinearLayoutManager(activity)
adapter = ContactsAdapter(contacts, true, this@ContactsList)
当我想重新使用它时,我的聊天室就像这样:
layoutManager = LinearLayoutManager(activity)
adapter = ContactsAdapter(contacts, true, this@ChatsClass)
我得到一个错误,因为它与给定的注解不匹配,这是正确的。如何确保它同时接受这两个类?
1条答案
按热度按时间9w11ddsr1#
我认为我们可以很容易地解决这个使用接口。我还没有测试代码,但它应该可以工作。
首先定义一个接口
在适配器中使用此接口
然后在你的联系人列表类中这样使用它
在你的聊天课上用这个